【发布时间】:2020-10-21 10:07:39
【问题描述】:
为什么我的 csv 写入不起作用?这似乎是一个非常简单的代码,但 csv write 要求一个可迭代的。我只需要把 1,2,3 写成一列。
import csv
data = [1,2,3]
output = 'output.csv'
with open(output,'w') as f:
writer = csv.writer(f)
for item in data:
writer.writerow(item)
【问题讨论】:
-
你见过这个问题吗?我认为作家需要一份清单。 stackoverflow.com/a/39282731/92953
-
对于 Writer 对象,行必须是字符串或数字的可迭代对象,对于 DictWriter 对象,必须是将字段名映射到字符串或数字的字典(首先通过 str() 传递它们)。 docs.python.org/3/library/csv.html
-
试试改成
writer.writerow([item]) -
不要过于挑剔,但如果每一行实际上只有一个值,为什么 CSV 会参与其中?对于一致的换行格式?因为你没有将
newline=''传递给open,所以无论如何你都不会得到它。 -
如果不是 CSV,我可以使用什么?你是在暗示我用 txt 代替吗?