如何使用一个键多个值写入一个字典到csv文件

时间:2015-02-17 17:13:47

标签: python csv

我有以下表格的字典

>>> {'1' : [V3210 , 234567 ,1235675 , 23], '2' : [v3214 , 5678 ,65879 ,89} , ...}

如何将此字典写入csv文件??

感谢

3 个答案:

答案 0 :(得分:2)

使用内置csv模块。这假设你想要key,value1,value2,...格式。

import csv

with open('filename', 'w') as f:
    c = csv.writer(f)

    for key, value in d.items():
        c.writerow([key] + value)

答案 1 :(得分:1)

假设数字键是行号,请尝试以下操作:

theDict = {'1' : [V3210 , 234567 ,1235675 , 23], '2' : [v3214 , 5678 ,65879 ,89] }
largestkey=max(map(int,theDict.keys()))
with file("out.csv") as f:
    for linenum in range(largestkey+1):
        f.write(",".join(theDict[str(linenum)])
        f.write("\n")

您希望查看Python的字符串API,列表处理和文件处理,以便更熟悉Python ...

答案 2 :(得分:0)

使用Python csv module会让这个变得非常简单:

import csv

d = {'1' : ['V3210', 234567, 1235675, 23], '2' : ['v3214', 5678, 65879 ,89], }

with open('output.csv', 'wb') as csvfile:
    csv.writer(csvfile).writerows([row[0]] + row[1] for row in d.iteritems())

请注意,{3}中的iteritems()字典方法已不复存在,因此您需要使用d.items()代替。