我有一本字典,d
其结构如下:
{'k':[5, -2, 6, 7, 2, 4, 8], 'c':[6, 3, 1, 2, 3, 4, 9]}
我想将此写入一个.csv文件,如下所示:
k, 5, -2, 6, 7, 2, 4, 8
c, 6, 3, 1, 2, -3, 4, 9
我尝试了以下代码:
with open('file.csv', 'w') as f:
for key in d.keys():
f.write("%s,%s\n"%(key,d[key]))
不幸的是,这产生了以下内容:
k, [5, -2, 6, 7, 2, 4, 8]
c, [6, 3, 1, 2, -3, 4, 9]
我所拥有的解决方案是仅在之后运行atr
或sed
command,但必须有一种方法可以在第一个命令中正确地编写它,对吗?
提前致谢!
我建议首先构建要以CSV格式写出的列表:
>>> [[k] + v for k, v in d.items()]
[['k', 5, -2, 6, 7, 2, 4, 8], ['c', 6, 3, 1, 2, 3, 4, 9]]
从那里开始,您的原始代码将起作用,但是我也建议您使用csv.writer
而不是滚动自己的格式:
import csv
with open('file.csv', 'w') as file:
csv_writer = csv.writer(file)
for row in [[k] + v for k, v in d.items()]:
csv_writer.writerow(row)
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句