【发布时间】:2013-12-14 21:07:39
【问题描述】:
我想将我的一些数据输出到一个 csv 文件,以便我可以在 excel 中打开它。但是,我什至无法让我的简单示例工作。这就是我所拥有的:
import csv
with open('test.csv','wb') as csvfile:
writer = csv.writer(csvfile, delimiter='\t')
writer.writerow(['hi'] + ['how'] + ['goes'] + ['it'])
我希望我的单词用制表符分隔,这样当我在 excel 中打开文件时,每个单词都会变成一个新列。
【问题讨论】:
-
您的解决方案有什么问题?顺便说一句,excel默认分隔符不是制表符,而是分号。可以加载表格分隔的数据,但有点棘手。
-
您的代码肯定会写入行
hi\thow\tgoes\tit\r\n,但可以使用writer.writerow(['hi', 'how', 'goes', 'it'])使其更简单您具体有什么问题? -
请注意,default 方言已经是 Excel CSV 方言。您确定要在此处使用制表符作为分隔符吗?您还可以使用
dialect='excel-tab'获取预先配置的制表符分隔的 Excel 方言。 -
最后但同样重要的是,您使用的是 Python 2 还是 3?如果是 Python 3,那么您需要打开文件对象略有不同:
with open('test.csv', 'w', newline='') as csvfile: -
@RDolabh:在这种情况下,只需省略整个
delimiter参数;逗号是默认的。