簡體   English   中英

Python我想知道如何使用for循環編寫(DictWriter)

[英]Python i would like to know how to writerow with a for loop (DictWriter)

我正在嘗試用DictWriter編寫csv文件。 到目前為止,我已經創建了一個列表和一個循環,但它只寫了列表的最后一行,列表中有多少項。 這是我的代碼:

fieldnames = ['Code', 'Hight', 'Country']
with open('write.csv', 'w',newline="") as f:
  w = csv.DictWriter(f,fieldnames=fieldnames,delimiter = "\t")
  w.writeheader()
  for i in my_list:
    w.writerow({"Code":code,"Hight":hight,"Country":country})

您正在for循環的每次迭代中編寫相同的變量。 如果my_list是字典列表,則代碼應為:

for i in my_list:
    w.writerow({"Code": i['code'], "Hight": i['hight'], "Country": i['country']})

如果my_list是列表列表,

for i in my_list:
    w.writerow({"Code": i[0], "Hight": i[1], "Country": i[2]})

這可能對你有幫助

導入csv

nms = [[1,2,3,4,5,6],[7,8,9,10,11,12]]

f = open('numbers2.csv','w')

用f:

writer = csv.writer(f)

for row in nms:
    writer.writerow(row)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM