根据其文档,csv.writer默认情况下应使用'\ r \n'作为lineterminator.
import csv
with open("test.csv", "w") as f:
writer = csv.writer(f)
rows = [(0,1,2,3,4),
(-0,-1,-2,-3,-4),
("a","b","c","d","e"),
("A","B","C","D","E")]
print writer.dialect.lineterminator.replace("\r", "\\r").replace("\n", "\\n")
writer.writerows(rows)
print writer.dialect.lineterminator.replace("\r", "\\r").replace("\n", "\\n")
Run Code Online (Sandbox Code Playgroud)
这打印
\r\n
\r\n
Run Code Online (Sandbox Code Playgroud)
正如所料.但是,创建的csv文件使用了行终止符'\ r \n\r \n'
0,1,2,3,4
0,-1,-2,-3,-4
a,b,c,d,e
A,B,C,D,E
Run Code Online (Sandbox Code Playgroud)
这是一个错误还是我使用csv.writer时出了什么问题?
Python版本:
在Win32上基于Python 2.6.2(r262:71600,2009年4月21日,15:05:37)[MSC v.1500 32位(英特尔)]的ActivePython 2.6.2.2(ActiveState Software Inc.)
在Windows Vista上