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语句