Python换行符问题:\r\n还是\n?


今天写一个Python脚本去读取一个txt文件时,发现一个很有趣的现象:

如果这个文件是用atom编辑器写的,发现换行符是'\r'。这样一来去逐行读取数据就失效了,因为用open函数 去打开该文件readline()时默认使用的换行符是'\n'。
但是,当这个txt文件是用pycharm编辑器写的话,其换行符就是'\n'了。一切正常。(Windows是'\r\n',Linux是'\n')
python3
在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=''都表示不转换。



免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM