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

如何用Python读取inventory.txt并输出指定字典嵌套列表结构数据

原代码存在的问题

  • 没有提前初始化存储数据的字典storeNumber
  • 读取的每行内容前后带有<br>和</br>标签,没有提前清理,会导致拆分出来的item前缀多了<br>、stock后缀多了</br>
  • 字典赋值逻辑写在了循环外面,只会保留最后一行的处理结果,之前行的数据都会丢失
  • 库存数字默认是字符串类型,没有转成你预期的整数格式
  • 最后打印时误用了不存在的storeWord变量,会直接报错

修改后的可运行代码

# 初始化存储结果的字典
storeNumber = {}

# 打开文件读取内容
with open('inventory.txt', 'r', encoding='utf-8') as file:
    for line in file:
        # 清理每行前后的标签、空白字符
        clean_line = line.strip().replace('<br>', '').replace('</br>', '').strip()
        # 跳过空行
        if not clean_line:
            continue
        # 拆分商品编码和库存数据
        item, stock = clean_line.split(':')
        # 库存字符串拆分后转成整数列表
        stock_list = [int(num) for num in stock.strip().split(',')]
        # 原文件中C5统一为你预期的C05格式
        if len(item) == 2:
            item = f"{item[0]}0{item[1]}"
        # 存入字典
        storeNumber[item] = stock_list

# 输出最终结果
print(storeNumber)

运行后输出结果和你要求的格式完全一致:
{'C01': [10, 10, 5, 4], 'C02': [0, 20, 10, 5], 'C03': [10, 20, 10, 1], 'C04': [0, 0, 10, 0], 'C05': [1, 1, 1, 1]}

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.05 06:09:02