我编写了以下python脚本来读取“prom output.csv”文件的内容,经过一些处理后,它将输出写入文件“sorted output。”
import collections
import csv
import sys
with open("prom output.csv","r") as f:
cr = csv.reader(f,delimiter=",")
d=collections.defaultdict(lambda : list())
header=next(cr)
for r in cr:
d[r[0]].append(r[1])
with open("sorted output.csv","w") as f:
cr = csv.writer(f,sys.stdout, lineterminator='\n')
cr.writerow(header)
od = collections.OrderedDict(sorted(d.items()))
for k,v in od.items():
cr.writerow([k,";".join(v)])
输出“sorted output.csv”如下所示:
我的输入文件:“prom output.csv”如下所示:
我想略微修改当前输出,以便它具有以下形式:
有什么想法吗?
答案 0 :(得分:3)
不要将join
用于行内容;只需将带有数据的标题组合到一个列表中:
cr.writerow([k]+v)