python - 尽管有输入,两个 If 语句只给出一个结果
问题描述
所以我刚开始编码,我目前的短期目标是制作一个非常小的 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# 和基于 Java 的 ModPE),它们处理大致相同的结构而没有错误,所以我很困惑。
解决方案
推荐阅读
- javascript - .ejs 文件的 Atom 是否有特定的语法?
- python - 在 Pandas 中从数据透视表中删除空值和切片
- javascript - Vue - 如何覆盖包装器组件的道具?
- firebase - Flutter Firebase Google 登录不起作用。账户选择后停止
- replace - 如何用括号替换字符串前后的引号?
- spring - Spring-boot:接受任何证书
- java - 使用 Stream Lambda 拆分整数
- apdu - 锁定页面 APDU 命令 OK5X21
- c# - Xamarin Forms Shell 是否有删除导航栏但保留汉堡图标的方法?
- javascript - 测试闭包。如何测试传递给闭包茉莉花的回调