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

如何通过Python的input函数获取返回值?技术求助

解决input返回值的类型匹配问题

你的代码核心问题是input()函数默认返回字符串类型,但你在判断逻辑里用它和整数100、200做比较,类型不匹配导致两个if分支都不会触发。下面给你两种修改方案:

方案一:将输入转换为整数(推荐,支持后续数值操作)

把输入的字符串转成整数,同时添加异常处理,避免用户输入非数字内容时程序报错:

def bike_wash(amount):
    print("Welcome to your bike wash")
    print("Please enter your desired wash")
    
    if amount == 100:
        print("Thanks for choosing basic wash")
        print("Enjoy water wash with spray")
    elif amount == 200:
        print("Thanks for choosing Premium wash")
        print("Enjoy foam wash to the entire body")
    else:
        print("Invalid amount, please enter 100 or 200")

try:
    amount = int(input("Enter wash amount: "))
    bike_wash(amount)
except ValueError:
    print("Please enter a valid number")

方案二:将判断条件改为字符串比较

如果不需要对amount做数值计算,直接把判断里的整数改成字符串即可:

def bike_wash(amount):
    print("Welcome to your bike wash")
    print("Please enter your desired wash")
    
    if amount == "100":
        print("Thanks for choosing basic wash")
        print("Enjoy water wash with spray")
    elif amount == "200":
        print("Thanks for choosing Premium wash")
        print("Enjoy foam wash to the entire body")
    else:
        print("Invalid amount, please enter 100 or 200")

amount = input("Enter wash amount: ")
bike_wash(amount)

另外建议把两个独立的if改成elif(避免逻辑冗余),同时新增else分支处理无效输入的情况,让程序更健壮。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.12 01:05:46