【发布时间】:2026-01-18 02:35:01
【问题描述】:
我的代码可以为我的“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
【问题讨论】:
-
你需要像第一次一样更新roll_dice的值。
roll_dice = input(prompt) -
roll_dice = input(prompt)内if roll_dice == "yes": -
请不要将问题中的代码编辑为固定版本,而不是您询问的非工作版本。问“为什么这段代码不起作用”然后显示工作代码只会让每个人感到困惑。我们希望保留原始错误,以便下面的答案对遇到类似问题的其他人有用。
标签: python-3.x dice