我想将字典的字典写到CSV文件, 每行一个键/值。
字典如下:
d = {'animal':{'reptile':['lizard', 'snake']},'food': {'meat': ['bacon', 'lamb', 'beef']}}
所需的CSV文件如下:
animal,reptile,lizard
animal,reptile,snake
food,meat,bacon
food,meat,lamb
food,meat,beef
我的代码:
import csv
d = {'animal':{'reptile':['lizard', 'snake']},'food': {'meat': ['bacon', 'lamb', 'beef']}}
f= open('file.csv', 'w', newline='')
with open('file.csv', 'w', newline='') as f:
writer = csv.writer(f,delimiter=',')
for key, key2s in d.keys():
for key2, values in d.items():
for value in values:
writer.writerow([key, key2, value])
我知道这里的for循环出了点问题,我尝试了各种变体,但仍然卡住了。我已经搜索并阅读了一些帖子,但没有找到可以帮助我解决问题的答案。您能指出我在这里错过的事情吗?
答案 0 :(得分:0)
您需要将每个循环中的值用作在下一个循环中迭代的对象。另外,两个循环都需要使用Paper numCitations Proceedings
Title7 8 Proc3
Title4 7 Proc2
,而不是items()
。
keys()