【发布时间】:2020-11-26 23:24:51
【问题描述】:
我是 python 新手,所以我决定使用 while 循环制作一个简单的骰子游戏,只是为了对自己做一个简单的测试。在游戏中,我使用模块 random 和方法random.randint(1, 6) 打印一个从“1 到 6”的任意值的随机整数,这显然是骰子在现实生活中的运作方式。但是为了让这个游戏成为一个游戏,如果打印的整数是偶数(random.randint(1, 6) % 2 ==0),那么会打印“you win”。如果整数是奇数,则打印“你输了”。在此之后,控制台询问您是否要再次掷骰子,如果您说是(不区分大小写,因此.lower())然后它再次掷骰子并继续循环,但如果您说其他任何内容,则循环中断。
我以为这就是它的工作方式,但时不时地,当掷出偶数时,会打印“你输了”,而奇数则相反,这不是我认为我编写的代码循环做。显然我做错了什么。有人可以帮忙吗?
这是我的代码:
import random
min = 1
max = 6
roll_again = True
while roll_again:
print(random.randint(min, max))
if random.randint(min, max) % 2 == 0:
print('you win')
else:
print('you lose')
again = input('roll the dice? ').lower()
if again == ('yes'):
continue
else:
print('ok')
break
【问题讨论】:
标签: python python-3.x while-loop dice