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

Python中input函数配合if语句使用时报错该如何解决?

报错原因

Python 3 中input()函数的所有返回值默认都是字符串(str)类型,你代码中获取到的Age变量是字符串格式,直接和整数类型的40、18做大小比较,两种不同类型的数据不支持直接比较运算,就会触发该报错。

解决方案

将Age变量转换为整数(int)类型后再执行比较逻辑即可,修正后的代码如下:

Name = input("Hi please enter your name: ")
print("Hi " + Name)
# 用int()将input返回的字符串转为整数
Age = int(input(Name + " could you please Enter your age: "))

if Age > 40:
    print(" Wow you are so old")
if Age < 18:
    # 注意原代码此处存在笔误,you应为young
    print("Wow you are so young")

如果需要兼容用户输入非数字的场景,可以额外增加异常捕获逻辑,避免输入非数字时程序直接崩溃:

Name = input("Hi please enter your name: ")
print("Hi " + Name)
while True:
    Age_input = input(Name + " could you please Enter your age: ")
    try:
        Age = int(Age_input)
        break
    except ValueError:
        print("请输入有效的数字年龄")

if Age > 40:
    print(" Wow you are so old")
if Age < 18:
    print("Wow you are so young")

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.06 09:09:00