gau*_*ann 19 python windows newline
我想使用在Linux上运行的python编写带有DOS/Windows行结尾'\ r \n'的文本文件.在我看来,必须有比手动放一个"\ r \n"在每行的末尾或者使用终止转换工具行更好的办法.理想情况下,我希望能够执行一些操作,例如将os.linesep分配给我在编写文件时要使用的分隔符.或者在我打开文件时指定行分隔符.
gau*_*ann 76
对于Python 2.6及更高版本,模块中的open函数io
有一个可选的换行参数,可让您指定要使用的换行符.
例如:
import io
with io.open('tmpfile', 'w', newline='\r\n') as f:
f.write(u'foo\nbar\nbaz\n')
Run Code Online (Sandbox Code Playgroud)
将创建一个包含以下内容的文件:
foo\r\n
bar\r\n
baz\r\n
Run Code Online (Sandbox Code Playgroud)
只需编写一个类似文件,包装另一个类似文件并转换\n
为\r\n
写入时即可。
例如:
class ForcedCrLfFile(file):
def write(self, s):
super(ForcedCrLfFile, self).write(s.replace(r'\n', '\r\n'))
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
35900 次 |
最近记录: |