You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python下雨判断代码输入no仍输出使用雨伞问题排查

错误原因
  • 未存储用户输入:str(input("Is it raining: ")) 执行后没有赋值给变量,后续判断完全没有用到用户输入的内容,且input本身返回字符串,外层的str()转换属于多余操作。
  • 条件判断逻辑失效:Python中非空字符串的布尔值为True,if("Yes" or "yes") 这个表达式会直接返回常量"Yes",永远为真,所以第一个分支会始终触发,不管用户输入什么都会输出Use Umbrella,不会走到后续判断分支。
修复代码

需要先存储用户输入,再将输入值与目标字符串做等值判断,也可以通过lower()方法统一转小写简化多大小写匹配的逻辑:

# 存储用户输入,strip()去除首尾多余空格
rain = input("Is it raining: ").strip()
if rain.lower() == "yes":
    print("Use Umbrella")
elif rain.lower() == "no":
    print("No need of Umbrella")
else:
    print("Invalid option")

内容的提问来源于stack exchange,提问作者Saureet。

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.19 15:15:04