这种格式的字典:
exec
我需要以csv格式保存它。
我这样做了:
d = {'key_1':['item_1','item_2','item_3'],'key_2':['item_1','item_2','item_3'],}
但是我的标题只有一行,项目只有一行,我希望每个项目都与pandas相同。
import csv
with open('output.csv', 'w') as f:
w = csv.DictWriter(f, d.keys())
w.writeheader()
w.writerow(d)
但当然在这种情况下不使用熊猫。
答案 0 :(得分:3)
假设len(d['key_1']) == len(d['key_2'])
。
import csv
d = {
'key_1':['item_1','item_2','item_3'],
'key_2':['2_item_1','2_item_2','2_item_3'],
}
with open('output.csv', 'w') as f:
w = csv.writer(f)
w.writerow(d.keys())
w.writerows(zip(*d.values()))
结果:
key_1,key_2
item_1,2_item_1
item_2,2_item_2
item_3,2_item_3
如果值列表的长度可能不同,请尝试以下操作:
import csv
import itertools
d = {
'key_1':['item_1','item_2','item_3'],
'key_2':['2_item_1','2_item_2','2_item_3', '2_item_4'],
}
with open('output.csv', 'w') as f:
w = csv.writer(f)
w.writerow(d.keys())
w.writerows(itertools.izip_longest(*d.values()))
结果:
key_1,key_2
item_1,2_item_1
item_2,2_item_2
item_3,2_item_3
,2_item_4