您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

Python 2 CSV编写器在Windows上生成错误的行终止符

Python 2 CSV编写器在Windows上生成错误的行终止符

在Python 2.x中,请务必按照 方式以 模式打开文件。按照您的预期进行csv编写\r\n,但是随后的基础Windows文本文件机制切入并将其更改\n\r\n…总效果\r\r\n

csv.writer文档中:

如果 csvfile文件对象,则必须在'b'有区别的平台上使用标志打开它。

实际上说出主要罪魁祸首的名字似乎有些沉寡言:-)

编辑:正如@jebob在此答案的注释中提到的,并基于@DaveBurton的答案,要在Python 2和3中处理这种情况,您应该执行以下操作:

不幸的是,Python 3的csv模块有点不同,但是此代码可同时在Python 2和Python 3上运行:

if sys.version_info >= (3,0,0):
    f = open(filename, 'w', newline='')
else:
    f = open(filename, 'wb')
if sys.version_info >= (3,0,0):
    f = open(filename, 'w', newline='')
else:
    f = open(filename, 'wb')
python 2022/1/1 18:39:28 有257人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶