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

Python模块运行时price_of_items函数print(idx,item)无输出问题

Python程序无print输出问题排查

你的代码存在4处语法/逻辑错误,导致无法执行到print(idx,item)环节,具体问题如下:

  • 变量名拼写不一致:函数开头定义的存储价格的空列表名为prices_items,后续添加元素时错误写为price_items,元素实际没有存入目标列表,遍历空列表不会触发打印。
  • input()传参错误:input()仅接受1个字符串类型的提示符参数,原代码写为input("Please enter the price of",+item),多传参数且字符串拼接语法错误,运行到此处会直接抛出异常,终止执行。
  • 赋值操作符写错:非法输入校验环节的option-option.upper()误把等于号=写为减号-,没有完成输入大写转换,会导致输入小写a也一直判定为非法,无法进入价格录入逻辑。
  • 入口函数调用缩进错误:末尾的main()调用缩进错误,属于main函数内部内容,脚本运行时不会主动执行入口函数,全程无任何输出。

修正后完整代码

def price_of_items():
    items = ["梨", "苹果", "葡萄"]
    prices_items = []
    for item in items:
        # 修正input参数和字符串拼接逻辑
        price = int(input(f"请输入{item}的价格:"))
        # 修正变量名
        prices_items.append(price)
    for idx, item in enumerate(prices_items):
        print(idx, item)
    return

def main():
    option = ""
    while option != "X":
        print("主菜单")
        print()
        print("A/商品定价")
        print("X/退出")
        option = input("请从上述菜单中选择选项A或X:")
        option = option.upper()
        while option not in ("A", "X"):
            print("输入无效")
            option = input("请选择A或X:")
            # 修正赋值操作符
            option = option.upper()
        if option == "A":
            price_of_items()
        else:
            exit()

# 修正缩进,顶格调用入口函数
main()

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.26 07:06:05