当replay((的答案是no时,我想退出游戏;N〃;但是键入";Y";或";N〃;似乎没有什么区别。这是我的第一篇文章,对任何错误表示歉意。由于某种原因,我无法发布整个代码
感谢
def replay():
replay_answer = input("do you want to play again?: ")
while replay_answer != "Y" and replay_answer != "N":
input("do you want to play again?: ")
if replay_answer == "Y":
return True
if replay_answer == "N":
return False`enter code here`
break
while True:
wincheck()
replay()
为什么你认为这会如你所愿?您对返回的replay()
结果不做任何操作。。。
在最后一个循环中试试这个:
while True:
wincheck()
if not replay():
break
如@khelwood所述,移除第一个break
:
def replay():
while True:
replay_answer = input("do you want to play again?: ")
if replay_answer == "Y":
return True
if replay_answer == "N":
return False
试试这个:
def replay() -> bool:
replay_answer = ""
while True:
replay_answer = input("do you want to play again?: ")
if replay_answer == "Y":
return True
if replay_answer == "N":
return False
while True:
wincheck()
if not replay():
break