Python中open和codecs.open之間的區別 - 程式人生
文章推薦指數: 80 %
import codecs f = codecs.open(filename, encoding="utf-8") ... 從Python 2.6開始,一種好的做法是使用 io.open() ,它也需要一個 encoding 引數,就像現在已經過時 ...
程式人生>python>Python中open和codecs.open之間的區別
【python】Python中open和codecs.open之間的區別
阿新••發佈:2020-10-25
有兩種方法可以在Python中開啟文字檔案:f=open(filename)
和importcodecs
f=codecs.open(filename,encoding="utf-8")
什麼時候codecs.open比open更可取?
解決辦法
從Python2.6開始,一種好的做法是使用io.open(),它也需要一個encoding引數,就像現在已經過時的codecs.open()一樣。
在Python3中,io.open是內建open()的別名。
因此io.open()可在Python2.6和所有更高版本(包括Python3.4)中使用。
檢視文件:http://docs.python.org/3.4/library/io.html現在,對於原始問題:在Python2中讀取文字(包括“純文字”,HTML,XML和JSON)時,您應該始終使用帶有顯式編碼的io.open()或在Python3中具有顯式編碼的open()。
這樣做意味著您可以正確解碼Unicode,或者立即得到錯誤,從而使除錯變得更加容易。
純ASCII“純文字”是遠古時代的神話。
正確的英文文字使用大括號,破折號,專案符號,€(歐元符號)甚至是透音符號(¨)。
不要天真!(並且別忘了立面設計模式!)由於純ASCII不是真正的選擇,因此沒有顯式編碼的open()僅是,而僅用於讀取二進位制檔案。
Python,可變長度位置引數後的預設關鍵字引數
«上一篇
使用NLTK建立新的語料庫下一篇»
相關推薦
Python中exit()和sys.exit()之間的區別
Python中except:和exceptException之間的區別,例如e:
Python中dir(...)和vars(...)。
keys()之間的區別?
python中的(**)和(<
延伸文章資訊
- 1List of open-source codecs - Wikipedia
Video codecsEdit · OpenVVC an VVC /H. · x265 – An encoder based on the High Efficiency Video Codi...
- 2python 文件读写时用open还是codecs.open - slower - 博客园
python 文件读写时用open还是codecs.open. 当我面有数据需要保存时,第一时间一般会想到写到一个txt文件中,当然,数据量比较大的时候还是写到数据库 ...
- 3python自然語言編碼轉換模組codecs介紹 - 程式前沿
codecs也提供了方法. 複製程式碼程式碼如下: #-*- encoding: gb2312 -*- import codecs, sys. # 用codecs提供的open ...
- 4Python小坑:open()和codecs.open()区别,以及常见指令和 ...
啥也别说了,用codecs.open()就完事了写贴原因因为接触Python时候已经是Python3.x的年代了,用的文件操作最多的就是with open() as file_:这一段话, ...
- 5Python Codecs Open | Delft Stack
The codecs.open() function works in parallel with the in-built open() function in Python and open...