我很難理解如何將csv的列表寫入csv,其中所有值均位於單獨的列中。在這裏,類似這樣的問題並沒有幫助我理解。我一直在使用DictWriter,但不知道如何在沒有錯誤的情況下提供dict.values(),'field x not in fieldnames'。將單詞列表寫入csv,並在單獨的列中輸入值
.....
dicts = [
{'sku': 'xxxx1', 'model': '1234-56K', 'price': '$xxx.xx', 'name': 'item_name_here', 'stock': 'True'},
{'sku': 'xxxx2', 'model': '1234-56K', 'price': '$xxx.xx', 'name': 'item_name_here', 'stock': 'False'}
]
csv_file = open('file.csv','wb')
fieldnames = ('name', 'price', 'stock', 'model', 'sku')
csvwriter = csv.DictWriter(csv_file, fieldnames, extrasaction='raise', dialect='excel')
csvwriter.writeheader()
csvwriter.writerows(dicts)
return csv_file
.....
這將返回我的價值在一列,但是當我遍歷類型的字典的值列表中它只是分裂所有的值(如字符串)轉換成's,t,r,i,n,g''仍然放入第一列。
爲我工作...有更多的代碼,你不包括? – mlnyc
你使用的是python3還是python2?我只是在python2.7中試過你的代碼,它似乎工作得很好。 – zzzirk
請注意,列出現在excel程序中的方式與寫入csv文件的方式不同。使用LibreOffice的Calc顯示我用Python編寫的csv文件時,我遇到了非常煩人的問題,但問題在於程序使用分隔符將數據拆分爲列。 –