为什么我的while循环if语句不工作吗?


answer = "8"
print("What is 5 + 3 = ? ")
answer = input()
while (answer != "8"):
if (answer == "8"):
print("Correct answer!")
else:
print("Incorrect answer!")

每当我在输入中输入正确的答案时,打印语句不会出现,而如果我输入错误的答案,它会向我发送无限的else语句。我该如何解决这个问题?

每当回答!= "8"时,while循环执行一次。如果输入8,它永远不会执行,因为8总是等于8,如果输入别的数,它会执行无限次因为不等于8的数永远不会等于8。这里的解决方案是去掉while行。

您应该将输入法移动到循环中-您希望用户能够在答案错误的情况下输入新数字

工作代码:

print("What is 5 + 3 = ? ")
while True:
answer = input()
if (answer == "8"):
print("Correct answer!")
break
else:
print("Incorrect answer!") 

这是因为如果答案是";8&;",程序就不会执行。您还应该知道,每个while循环都应该有一个break语句。如果你想让这段代码只输出结果是否正确你可以删除while语句

相关内容

  • 没有找到相关文章

最新更新