尽管输入,但两个if语句仅给出一个结果

时间:2018-11-28 01:16:03

标签: python python-3.x

所以我才刚开始编码,而我的短期目标是制作一个非常小的RPG战斗模拟器(因此有代码段),并且我已经学习Python了几天。我决定练习if语句和函数,并创建了本节代码。

health = 7
weak = input("Are you weak? Y/N \n")
action = input("Will you attack? Y/N \n")

def attack(wk, hp):
    if wk == "N" or "n":
        hp -= 3
    else:
        hp -= 2
    return hp


if action == "y" or "Y":
    health = (attack(weak, health))
    print(str(health))
else:
    print("No attack made")

我认为我没有做错任何事情,但是无论这段代码如何运行,都对我的健康造成了重大影响,并在退出前返回4。有谁知道为什么它只返回4? 我已经迷上了其他语言(即C#和ModPE,即基于Java的语言),它们可以毫不费力地处理大致相同的结构,所以我很困惑。

0 个答案:

没有答案