我知道類似的問題已經被問過了,我一直在討論這段代碼現在幾個小時,任何人都可以幫助我嗎?局部變量「ANSWER」未被使用(pycharm)
此代碼位於名爲game()的函數內,該函數有一個while循環,這是while循環的'else'部分。
else:
ANSWER = input("Sorry, game over. Would you like to try again? \'y/n\'")
if 'y' or 'yes' == ANSWER:
game()
elif 'n' or 'no' == ANSWER:
print("See you next time.")
break
else:
ANSWER = input("Sorry, I didn't get that. Restart? \'y/n\'")
game()
Pycharm告訴我局部變量ANSWER沒有用於最後一行代碼。我的縮進是關閉的嗎?是因爲我正在重新分配ANSWER嗎?我試着早些時候做答案==如果'是'或'是':(和「否」行相同的格式)並且都沒有什麼不同,所以這不是問題..
另外,無論我輸入的答案是,在顯示的第4行顯示'game()'命令。我可以輸入「alksdfj」,它會重新開始遊戲。
感謝
1)「我的縮進是否關閉?」 - 如果沒有看到更多的代碼,這是不可能的。 2)「如果'y'或'yes',我早些時候試着回答==:所以這不是問題。」是的,它是*一個*的問題。你的測試總是如此。 'if'y'or'yes'== ANSWER'被評估爲True,因爲'if'y''總是爲真。你想要的是'if(ANSWER =='y')或(ANSWER =='yes'):'。這同樣適用於elif語句。 – Craig