如何使用 Python(在 Windows 上)写入文件并使用 Unix 行尾字符?
例如做时:
f = open('file.txt', 'w')
f.write('hello\n')
f.close()
Python自动替换\n
with \r\n
.
现代方式:使用 newline=''
Use the newline=
关键字参数为io.open()使用 Unix 风格的 LF 行尾终止符:
import io
f = io.open('file.txt', 'w', newline='\n')
这适用于 Python 2.6+。在Python 3中你还可以使用内置的open()
功能newline=
参数而不是io.open()
.
老方法:二进制模式
防止换行转换的旧方法在 Python 3 中不起作用,即在binary防止行尾字符转换的模式:
f = open('file.txt', 'wb') # note the 'b' meaning binary
但在Python 3中,二进制模式将读取bytes并不是人物所以它不会做你想做的事。当您尝试在流上执行字符串 I/O 时,可能会遇到异常。 (例如“TypeError:'str'不支持缓冲区接口”)。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)