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

Python中如何让input输入值作用于函数参数?代码异常排查

问题根源
  • input() 函数的返回值默认是字符串类型,代码中判断条件是和整数1、2做相等比较,类型不匹配导致判断分支永远无法命中,函数无匹配返回值时会默认返回None。
  • 字符串分割逻辑错误:待处理字符串pizza,apple用逗号做分隔符,代码里却传了空格作为split()的分割参数,无法正确拆分商品为独立元素。
  • 计数分支逻辑错误:分支中直接返回fixed_list_option_1.count,这是列表的count方法对象本身,不是方法执行后的计算结果,就算命中分支也无法得到预期的计数值。
修复后可运行代码
def market_list(user_request):
    # 修正分隔符为逗号,匹配原字符串的商品分隔规则
    fixed_list_option_1 = customer_products_string.split(',')
    if user_request == 1:
        return fixed_list_option_1
    elif user_request == 2:
        # 调用len()获取列表元素总数,若需要统计指定商品出现次数可改用fixed_list_option_1.count("指定商品名")
        return len(fixed_list_option_1)


customer_products_string = "pizza,apple"
# 将输入获取的字符串转为整数类型,再传入函数做判断
user_request = int(input("What is your request? (insert the number of the command) : "))
print(market_list(user_request))
运行效果
  • 输入1时,返回拆分完成的商品列表:['pizza', 'apple']
  • 输入2时,返回商品列表的元素总数:2

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.02 01:24:32