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

如何不使用Pandas实现文本文件中指定列数据的分组求和?

Python按列表第二个元素分组求和第三个元素

实现步骤与代码

核心思路是用字典作为分组容器,键对应列表的第二个元素,值存储对应第三个元素的累加和,具体代码如下:

# 初始化分组求和字典
sum_result = {}

# 读取并处理文件
with open('target_file.txt', 'r', encoding='utf-8') as file:
    for line in file:
        # 跳过空行
        line = line.strip()
        if not line:
            continue
        
        # 解析每行的列表元素(适配形如['xxx', '23', '1']的格式)
        # 移除首尾方括号,分割元素
        parts = line.strip('[]').split(', ')
        # 提取第二个元素(去除引号)
        key = parts[1].strip("'\"")
        # 提取第三个元素并转为整数(如果是小数则用float)
        value = int(parts[2].strip("'\""))
        
        # 累加求和
        if key in sum_result:
            sum_result[key] += value
        else:
            sum_result[key] = value

# 打印最终结果
for elem, total in sum_result.items():
    print(f"第二个元素为'{elem}'的列表,第三个元素求和结果为{total}")

代码说明

  • 使用with open语法确保文件自动关闭,避免资源占用问题
  • 针对每行列表格式做了解析处理,移除方括号、引号等符号,将第三个元素转为数值类型才能进行求和
  • 字典sum_result自动完成分组:遇到已存在的第二个元素就累加值,不存在则初始化键值对

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.24 17:48:20