如何在另一个字典中将字典写入Python中的CSV文件

时间:2013-04-12 11:19:21

标签: python csv dictionary

我在字典中有一本字典,如下所示:

{'ID1':{'sam':1,'maj':5, 'tif':7, 'paul':1},
 'ID2':{'maj':4,'bib':5},
 ...}

如何将此内容写入CSV文件?我想为主键和单独的内键列分别使用积分

2 个答案:

答案 0 :(得分:0)

希望这能指出你正确的方向。假设你想按ID的排序顺序。

>> import csv
>>> d = {'ID1':{'sam':1,'maj':5, 'tif':7, 'paul':1},'ID2':{'maj':4,'bib':5},}
>>> with open('test.csv', 'w') as f:
        fieldnames = ('sam', 'maj', 'tif', 'paul', 'bib')
        w = csv.DictWriter(f, fieldnames)
        for k, row in sorted(d.items()):
            w.writerow(row)


>>> with open('test.csv') as f: # showing contents
        print f.read()


1,5,7,1,    
,4,,,5

答案 1 :(得分:0)

enter image description here我想这就是你要找的东西:

import csv
with open('/home/test/kelvin1/add.csv', 'wb') as csvfile:
    kev = csv.writer(csvfile, delimiter=' ',
                 quotechar='|', quoting=csv.QUOTE_MINIMAL)
    k ={'ID1':{'sam':1,'maj':5,'tif':7,'paul':1},'ID2':{'maj':4,'bib':5}}
    for i in k:
          kev.writerow(i)
          for j in k[i]:
              kev.writerow(j)
              kev.writerow('%d' % (k[i][j]))

此代码对我有用