我试图在 Windows 计算机上使用 Python 3.2 编写一个简单的 CSV 文件,但是我没有运气。来自Python 3.2 的 csv 模块文档 http://docs.python.org/release/3.2/library/csv.html#csv.writer:
>>> import csv
>>> spamWriter = csv.writer(open('eggs.csv', 'w'), delimiter=' ',
... quotechar='|', quoting=csv.QUOTE_MINIMAL)
>>> spamWriter.writerow(['Spam'] * 5 + ['Baked Beans'])
>>> spamWriter.writerow(['Spam', 'Lovely Spam', 'Wonderful Spam'])
生成一个文件,每行均以字节序列结尾\r\r\n
,因此当您使用 MS Excel 等打开它时,每一行看起来都有一个额外的空行。这不是“CSV 文件”。
请注意,如果我尝试Python 2.7 的相同示例 http://docs.python.org/release/2.7/library/csv.html#csv.writer在 Python 3.2 中(最大的区别是'w'
vs 'wb'
对于文件模式),当我尝试时出现错误spamWriter.writerow
:
回溯(最近一次调用):文件“”,第 1 行,类型错误:“str”不支持缓冲区接口
如何在 Windows 计算机上通过 Python 3.2 编写简单的 CSV 文件?
文档说你应该使用open('eggs.csv', 'w', newline='')
http://docs.python.org/py3k/library/csv.html#id2 http://docs.python.org/py3k/library/csv.html#id2
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)