我的字典串列如下所示:
{'match':['football','cricket','baseball'],'player':['2','11','8']}
我想將此字典轉換為 csv 但不使用熊貓。
我的代碼:
import csv
my_dictionary = {'match':['football','cricket','baseball'],'player'['2','11','8']}
with open('data.csv', 'w') as f:
for key in my_dictionary.keys():
f.write("%s, %s\n" % (key, my_dictionary[key]))
我想看到的輸出:
match player
football 2
cricket 11
baseball 8
uj5u.com熱心網友回復:
因此,如果您想使用您的技術,您可以首先將所有鍵作為標題寫入第一行,然后遍歷串列以獲取剩余行,如下所示:
import csv
my_dictionary = {'match':['football','cricket','baseball'],'player':['2','11','8']}
with open('data.csv', 'w') as f:
headers = ', '.join(my_dictionary.keys()) '\n'
f.write(headers)
for row in zip(*my_dictionary.values()):
string_row = ', '.join(row) '\n'
f.write(string_row)
輸出:
match, player
football, 2
cricket, 11
baseball, 8
uj5u.com熱心網友回復:
使用 zip 將這 2 個串列 ( 'match','player') 組合成一個元組串列。加入每個元組,。然后只需將其中的每一個寫入檔案即可。
import csv
my_dictionary = {'match':['football','cricket','baseball'],'player':['2','11','8']}
zipList = list(zip(my_dictionary['match'],my_dictionary['player']))
zipList = [','.join(x) for x in zipList]
with open('data.csv', 'w') as f:
headers = ','.join(my_dictionary.keys()) '\n'
f.write(headers)
for each in zipList:
f.write("%s\n" % (each))
uj5u.com熱心網友回復:
為避免使用 Pandas,請使用內置的 CSV 庫:
import csv
my_dictionary = {'match':['football','cricket','baseball'],'player':['2','11','8']}
with open('output.csv', 'w', newline='') as f_output:
csv_output = csv.writer(f_output)
csv_output.writerow(my_dictionary.keys())
csv_output.writerows([*zip(*my_dictionary.values())])
這將產生output.csv包含:
match,player
football,2
cricket,11
baseball,8
您的字典鍵為您提供標題,如果您使用標準*zip(*xxx)技巧來轉置條目,您可以一次寫入所有行。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/445163.html
