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