[英]Python write list items to csv
我有這段代碼,它想將我的列表項導出到一個csv文件中,其中文件中的每一行都包含列表中的一項。
writer = csv.writer(open(path+"output.csv", 'wb'))
for item in result:
writer.writerow(item)
我得到的結果非常奇怪(例如列表中的前兩個項目:“到期”和“代碼”):
p,a,s,t, ,d,u,e
c,o,d,e
我想要得到的結果很簡單:
past due
code
有任何想法嗎 ?
這里已經有解決方案: 用Python將字符串列表寫入Excel CSV文件
您無需遍歷列表中的每個元素。 嘗試這個:
writer = csv.writer(open(path+"output.csv", 'wb'))
writer.writerow(result)
writerow
方法接受單個參數,並以逗號分隔形式表示組成其參數的元素。
通常使用的參數是列表,元組等。顯然您使用了字符串,因此寫入的是字符串元素的順序
如果要迭代的所有元素都是字符串,則可以解決問題
for item in result:
writer.writerow([item])
但是編寫僅包含一列的csv文件是不尋常的,並且可能您可能想編寫一個簡單的文本文件...如果result
中的所有元素都是字符串,那么以下代碼
with of as open('result.txt')
of.write("\n".join(result))
會做的工作。
我認為問題出在這里:
for item in result:
writer.writerow(item)
result
變量實際上是一個字符串,這就是為什么要在每個字符后添加逗號的原因。 result
不是您的代碼所建議的字符串數組-實際上是一個字符串(字符數組)。
with open('returns.csv', 'wb') as f:
writer = csv.writer(f)
for val in daily_returns:
writer.writerow([val])
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.