【发布时间】:2020-02-14 02:40:17
【问题描述】:
我正在尝试使用 def 工具制作一个基于文本的游戏来制作一个简单的循环。但是,当玩家死亡时,我无法拥有它,询问玩家是否希望再次玩,然后循环重新开始。我已经更改了代码,以便当玩家死亡时, playAgain = "n" 循环结束,但它仍然什么都不做。是因为它是一个全局变量而我试图用一个局部变量来影响它吗?如果是这样,我该如何解决?
playAgain = "y"
while playAgain == "y" or playAgain == "yes" :
displayIntro()
choosePath()
checkPath()
NextSteps()
Reaction()
attackCHOICE()
if playAgain != "y" or playAgain != "yes":
time.sleep(1)
print()
delayprint("Do you want to play again? ")
playAgain = input()
【问题讨论】:
-
我这一切都在一个函数里面?能否请您显示更多的代码结构
-
如果您简单地运行:
import time playAgain = "y" while playAgain == "y" or playAgain == "yes" : #displayIntro() #choosePath() ##checkPath() #NextSteps() #Reaction() #attackCHOICE() if playAgain != "y" or playAgain != "yes": time.sleep(1) print() #delayprint("Do you want to play again? ") playAgain = input(),它将具有您所期望的行为。这意味着您可能遇到了上下文变量问题,正如您所说,或者您的某个函数可能正在做他们不应该做的事情 -
它只是在一个“while”循环中
标签: python