我在問用戶他們是否想先走,並使用輸入驗證,以便只接受「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'如果這些答案中的任何一個對您有幫助,您應該選擇一個作爲解決方案。 –