我在问用户他们是否想先走,并使用输入验证,以便只接受“y”“Y”“n”或“N”作为有效响应。我的代码似乎崩溃时,我运行它。Python:输入验证
choice = raw_input("Would you like to go first or not? (y/Y or n/N): ")
print ""
try:
valid_choice = False
while not valid_choice:
if choice == "y" or choice == "Y":
users_turn = True
valid_choice = True
elif choice == "n" or choice == "N":
users_turn = False
valid_choice = True
break
else:
print "Invalid Choice."
except NameError:
print "You can only enter y/Y or n/N"
*“我的代码似乎崩溃了”* - 以何种方式,更准确地说?什么是错误? – Dolda2000
您在if子句 – zhangxaochen
中缺少'break'如果这些答案中的任何一个对您有帮助,您应该选择一个作为解决方案。 –