在Python中把Dict转换为CSV
salary = [{‘Name’:‘Alice’, ‘Job’:‘Data Scientist’, ‘Salary’:122000},
{‘Name’:‘Bob’, ‘Job’:‘Engineer’, ‘Salary’:77000},
{‘Name’:‘Carl’, ‘Job’:‘Manager’, ‘Salary’:119000}]
Method 1
import pandas as pd
df = pd.DataFrame(salary)
df.to_csv(‘my_file.csv’, index=False, header=True)
import csv
data = {‘A’:‘X1’, ‘B’:‘X2’, ‘C’:‘X3’}
#Method 2
with open(‘my_file.csv’, ‘w’, newline=‘’) as f:
writer = csv.DictWriter(f, fieldnames=data.keys())
writer.writeheader()
writer.writerow(data)
import pandas as pd
data = [{‘A’:‘X1’, ‘B’:‘X2’, ‘C’:‘X3’},
{‘A’:‘Y1’, ‘B’:‘Y2’, ‘C’:‘Y3’}]
#method3
df = pd.DataFrame(data)
my_csv_string = df.to_csv(index=False)
print(my_csv_string)
‘’’
A,B,C
X1,X2,X3
Y1,Y2,Y3
‘’’
import csv
#method4
row = {‘A’:‘Y1’, ‘B’:‘Y2’, ‘C’:‘Y3’}
with open(‘my_file.csv’, ‘a’, newline=‘’) as f:
writer = csv.DictWriter(f, fieldnames=row.keys())
writer.writerow(row)
import csv
data = {‘A’:42, ‘B’:41, ‘C’:40}
#method5
with open(‘my_file.csv’, ‘w’, newline=‘’) as f:
writer = csv.writer(f)
for row in data.items():
writer.writerow(row)
import csv
data = {‘A’:‘X1’, ‘B’:‘X2’, ‘C’:‘X3’}
#method6
with open(‘my_file.csv’, ‘w’, newline=‘’) as f:
writer = csv.DictWriter(f, fieldnames=data.keys())
writer.writeheader()
writer.writerow(data)
salary = [{‘Name’:‘Alice’, ‘Job’:‘Data Scientist’, ‘Salary’:122000}, {‘Name’:‘Bob’, ‘Job’:‘Engineer’, ‘Salary’:77000}, {‘Name’:‘Carl’, ‘Job’:‘Manager’, ‘Salary’:119000}]
Method 7
with open(‘my_file.csv’,‘w’) as f:
f.write(‘,’.join(salary[0].keys()))
f.write(‘n’)
for row in salary:
f.write(‘,’.join(str(x) for x in row.values()))
f.write(‘n’)