我是python的新手。我无法得到以下问题的正确指导。
我有一个对象数组如下:
[{"key1":22,"key2":33},{"key1":55,"key2":66}]
我想将其转换为csv,如下所示:
key1 key2
22 33
55 66
你能指导我解决这个问题。提前谢谢。
答案 0 :(得分:2)
您实际上可以使用pandas数据帧结构。让d
成为您的字典,您可以使用以下内容构建数据框:
df = pd.DataFrame(d)
然后将其保存到csv:
df.to_csv('yourfile.csv', index=False)
答案 1 :(得分:2)
构建一个DataFrame只是为了创建一个csv文件没有多大意义,csv.DictWriter
旨在完全按照您的意愿执行:
import csv
d = [{"key1":22,"key2":33},{"key1":55,"key2":66}]
with open("out.csv", "w") as f:
wr = csv.DictWriter(f, delimiter="\t",fieldnames=list(d[0].keys()))
wr.writeheader()
wr.writerows(d)
如果您希望按字母顺序排列列,则还需要对键进行排序,因为这些键是无序的,因此请使用fieldnames=sorted(d[0].keys())
。