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

Python中if-else输入判断失效求助:输入4始终触发else分支

问题分析与解决

你的代码逻辑本身没问题,但问题出在**sample_number的类型或赋值环节**:

  1. 最常见的原因是你获取输入时没有转换类型:Python的input()函数默认返回字符串类型,比如你输入4,得到的是字符串"4",而字符串"4"和整数4是不相等的,所以条件sample_number == 4永远为False,会执行else分支。
  2. 另外也可能是你没有给sample_number赋值为用户输入的内容,缺少获取输入的代码。

修正后的完整代码

# 先获取输入并转换为整数类型
sample_number = int(input("请输入一个数字:"))
if sample_number == 4:
    print("The number is 4.")
else:
    print("Number is not 4.")

验证说明

  • 当你输入4时,int(input())会把字符串"4"转换成整数4,此时sample_number == 4成立,会打印指定内容。
  • 如果需要兼容非整数输入(比如输入带小数点的4.0),可以换成float(input()),但要注意判断条件对应调整为sample_number == 4.0或者用近似比较。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.21 21:27:28