将字典(键和值)写入csv文件

时间:2014-02-01 20:45:48

标签: python python-2.7 dictionary

我只想让csv文件看起来像这样:

键,ITEM1,ITEM2,项目3 KEY2,意达,itemB,itemC

等等

字典有一个键,值是一个浮点列表。 这是我必须写入csv文件的当前代码,但它所做的只是写出这样的键:k,e,y,s

感谢任何帮助

with open(outFileName1, 'w') as outfile:
   csv_Writer = csv.writer(outfile)
   csv_Writer.writerows(dict1)

3 个答案:

答案 0 :(得分:3)

import csv


dict_data = {'key1': [1, 2, 3], 'key2': [4, 5, 6]}

with open("dict2csv.txt", 'w') as outfile:
   csv_writer = csv.writer(outfile, delimiter=',', quotechar='|', quoting=csv.QUOTE_MINIMAL)

   for k,v in dict_data.items():
       csv_writer.writerow([k] + v)

此代码将在csv文件的单独行中以所需格式写入每个键值对。

答案 1 :(得分:0)

如果不详细了解CSV的工作原理,您可以使用以下内容轻松解决问题:

with open("out.txt", 'w') as outfile:
    for k,v in dict1.items():
        outfile.write(str(k))
        for item in v:
            outfile.write(","+str(item))
        outfile.write(" ")

答案 2 :(得分:0)

您当前的代码会迭代仅生成键的字典。看看

import csv

data = {
    'key1': ['item1', 'item2'],
    'key2': ['item3', 'item4']
}

with open('', 'w') as outfile:
    writer = csv.writer(outfile)
    for k, v in data.iteritems():
        writer.writerow([k] + v)

请注意,它会迭代.iteritems()返回的键值对。密钥将插入到与值列表连接的列表中。