我的代码可以为我的'elif'和'else'语句退出程序,但是当我输入'yes'时,我陷入了这个输入循环,我输入的任何内容仍然掷骰子。一旦输入“是”并进入循环,如何通过输入“否”退出程序?
import random
min = 1
max = 6
prompt = "Roll dice? Type yes or no. "
roll_dice = input(prompt)
while roll_dice:
if roll_dice == "yes":
print ("you rolled", random.randint(min, max), random.randint(min, max))
input(prompt)
elif roll_dice == "no":
print ("see you later!")
break
else:
print ("invalid answer")
break
而不是仅仅做
input(prompt)
对于给定的输入不执行任何操作,这意味着roll_dice
始终等于"yes"
,您将陷入无限循环
您应该使用
roll_dice = input(prompt)
[将roll_dice
设置为新值,因此让您退出