【发布时间】:2016-04-27 13:49:15
【问题描述】:
我在 ubuntu 下的 python3.4 脚本上工作,在该脚本中我接受一个在 Windows 下生成的文件(编码为 UTF-8)的参数。我必须逐行浏览文件(由\r\n 分隔)知道“行”包含一些我想保留的'\n'。
我的问题是 Python 在打开文件时会将文件的 "\r\n" 转换为 "\n"。我试过用不同的模式打开("r"、"rt"、"rU")。
我找到的唯一解决方案是在二进制模式而不是文本模式下工作,以"rb" 模式打开。
有没有办法不使用二进制模式或正确的方法来做到这一点?
编辑:解决方案:
with open(filename, "r", newline='\r\n') as f:
【问题讨论】:
标签: python windows python-3.x unix line-endings