Python 在if语句中修改字典

Python 在if语句中修改字典,python,if-statement,Python,If Statement,我一直在尝试用Python制作一个基本的文本游戏,我正在使用字典来包含玩家的信息。我希望这样,当玩家的健康达到0时,代码将停止运行。我很难做到这一点。我的字典位于代码的开头,如下所示: playerAtt = {} playerAtt["Weapon"] = "Baseball bat" playerAtt["Party"] = "Empty" playerAtt["Health"] = 15 playerAtt["Cash"] = "$100"

我一直在尝试用Python制作一个基本的文本游戏,我正在使用字典来包含玩家的信息。我希望这样,当玩家的健康达到0时,代码将停止运行。我很难做到这一点。我的字典位于代码的开头,如下所示:

    playerAtt = {}
    playerAtt["Weapon"] = "Baseball bat"
    playerAtt["Party"] = "Empty"
    playerAtt["Health"] = 15
    playerAtt["Cash"] = "$100"
    print(playerAtt)

    if playerAtt['Health'] <= 0:
        exit()

当你到达游戏的这一部分时,它所做的只是打印消息,然后继续下一个决定。在这种情况下,我可以通过在print命令下执行exit()来手动结束程序,但在某些情况下,玩家只会损失一小部分生命值,最终会达到零。抱歉,如果这是一个愚蠢的问题,我只在Python上工作了几天。

当您将玩家的健康设置为0时,您有两个“=”

我在定义时将2==而不是1=

    playerAtt["Health"]. 
此外,我需要确保它不断检查玩家的健康状况是否为零,因此我使用了while循环。我曾经

    while playerAtt["Health"] = 0:
        deathmsg()
        exit()

去修理它。deathMsg是我用来显示随机死亡消息的函数,以获取更多信息。

playerAtt['Health']==0
不会将其设置为0尝试使用单个
=
也就是说,如果语句没有持续被测试,那么除非您在每次他丢失后测试他的健康状况,否则进行单个测试将不起作用。
    while playerAtt["Health"] = 0:
        deathmsg()
        exit()