python 多行对应元素求和
今天有个统计需求,需要对应的元素的列求和,文件示例如下:
1 ID1 0 2 7 2 ID2 1 5 6 3 ID3 2 2 6 4 ID4 1 6 0 5 ID2 3 8 3 6 ID2 0 8 3 7 ID4 2 2 9 8 ID2 3 7 7 9 ID1 1 5 3 10 ID2 2 3 7 11 ID3 0 2 5 12 ID2 5 4 7 13 ID4 5 8 2 14 ID2 6 9 9 15 ID1 1 4 4 16 ID2 8 2 9 17 ID1 1 3 0 18 ID3 8 0 3 19 ID2 9 2 9 20 ID4 1 5 6
求和代码如下:
1 import sys 2 dt=[] 3 dct={} 4 f=open(sys.argv[1],'r') 5 for i in f: 6 line=i.strip().split() 7 name=line[0] 8 dt=[int(x) for x in line[1:]] 9 dct.setdefault(name,[]).append(dt) 10 11 dct2=dict() 12 for each in dct: 13 cols=[] 14 for num in zip(*dct[each]): 15 cols.append(sum(num)) 16 dct2[each]=cols 17 18 for res in dct2: 19 info="\t".join([str(x) for x in dct2[res]]) 20 print(res+"\t"+info)
运行结果如下:
作者:天使不设防
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利.
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!