Skip to main content
 首页 » 编程设计

python之从 JSON 到 CSV 的字典

2025年05月04日30sky-heaven

我有一个 JSON 文件,其中包含一个包含许多键值对的字典。我想将其写入单个 CSV。一种方法是简单地遍历每个键:

csvwriter.writerow([f["dict"]["key1"], f["dict"]["key2"], 
                    f["dict"]["key3"], ... ]) 

这会很乏味。

另一种可能性是简单地使用

csvwriter.writerow([f["dict"].values()]) 

但它会将所有内容写入 CSV 文件的一列,这没有帮助。

有没有办法将每个值写入 CSV 文件的一列?

请您参考如下方法:

您可能想使用 csv.DictWriter

官方文档中的示例非常简单:

import csv 
 
with open('names.csv', 'w') as csvfile: 
    fieldnames = ['first_name', 'last_name'] 
    writer = csv.DictWriter(csvfile, fieldnames=fieldnames) 
 
    writer.writeheader() 
    writer.writerow({'first_name': 'Baked', 'last_name': 'Beans'}) 
    writer.writerow({'first_name': 'Lovely', 'last_name': 'Spam'}) 
    writer.writerow({'first_name': 'Wonderful', 'last_name': 'Spam'}) 

请注意,您必须向构造函数提供fieldnames。如果你确定你所有的字典都有相同的键并且不关心输出的顺序,你可以只使用 list(first_dict) 来获取列名,否则,你我们会想出一种更明确地指定它们的方法。