我知道类似的问题已经被问过了,我一直在讨论这段代码现在几个小时,任何人都可以帮助我吗?局部变量“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