我的CSV标题如下所示
ID | First Name | Last Name | Email
我有很多字典要在循环中添加为行,看起来像这样。
{'ID':1, 'First Name':'John', 'Last Name':'Doe','Email':'[email protected]'}
{'Email':'[email protected]', 'First Name':'Jane', 'Last Name':'Doe', 'ID':3}
csv标题列和字典中的键完全相似,但正如您所看到的那样,字典按顺序混乱。如何将每行添加到csv文件中,以便在csv中的列下添加字典中的正确项?
使用Python 3.5.2
CSV DictWriter()
可以使用如下:
import csv
data = [{'ID':1, 'First Name':'John', 'Last Name':'Doe','Email':'[email protected]'},
{'Email':'[email protected]', 'First Name':'Jane', 'Last Name':'Doe', 'ID':3}]
with open('output.csv', 'w', newline='') as f_output:
csv_output = csv.DictWriter(f_output, fieldnames=['ID', 'First Name', 'Last Name', 'Email'])
csv_output.writeheader()
csv_output.writerows(data)
给你output.csv
包含:
ID,First Name,Last Name,Email
1,John,Doe,[email protected]
3,Jane,Doe,[email protected]