将Python列表数据逐行写入CSV文件

30
使用Python,我正在按行将列表中的数据写入.csv文件。
代码:
writer=csv.writer(open(filepath,'wb'))
header=['type','id','numberOfUpdates','isPingEnabled','lastUpdated']
length_list=len(header)
i=0

while i!=length_list :
    data=header[i]
    print data
    i=i+1
    writer.writerow(data)

结果:数据被写入CSV文件,但每个字母都在单独的列中打印。

例如:类型被写成在一列中是't',下一列是'y',以此类推。我需要整个单词在一列中。有人能指出我可以做出哪些更改吗?

谢谢


4
我认为这个问题不应该被踩。它是一个清晰明确的问题。提问者唯一的错误可能就是没有完全理解csv模块的文档。 - jdi
在我看来,这个问题没有任何问题。 - tumultous_rooster
2个回答

50

writer.writerow(data)更改为writer.writerow([data])

.writerow接受一个可迭代对象,并使用该可迭代对象的每个元素填充每一列。如果您使用只有一个元素的列表,则该元素将放置在单个列中。

您还应重构您的循环:

for word in header:
    writer.writerow([word])

0

这对我有用:

for item in RESULTS:
     wr.writerow([item,])

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接