本帖最后由 heidern0612 于 2018-12-16 09:10 编辑
rU模式,即U通用换行模式(Universal new line mode),该模式会把所有的换行符(\r \n \r\n)替换为\n。
常用于python2时代,python2的时代强烈推荐。因为它会把回车符/r和换行符/n统一替换成/n输出。
给个例子对比r模式和rU模式
- content = file(fn, 'r').read()
- # test\r\ntest2 # 这里的换行会因不同系统而不同
- content = file(fn, 'rU').read() # 所有的换行都被统一,不分系统
复制代码
然而Python3时代并不推荐用rU模式,因为没什么用。
因为在Python 3时代,已经可以通过open函数的newline参数来控制Universal new line mode:
读取时候,不指定newline,则默认开启Universal new line mode,所有\n, \r, or \r\n被默认转换为\n ;
写入时,不指定newline,则换行符为各系统默认的换行符(\n, \r, or \r\n, ),指定为newline='\n',则都替换为\n(相当于Universal new line mode);
不论读或者写时,newline=''都表示不转换。