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中的(**)和(<
延伸文章資訊
- 1Python中open和codecs.open之間的區別 - 程式人生
import codecs f = codecs.open(filename, encoding="utf-8") ... 從Python 2.6開始,一種好的做法是使用 io.open() ,...
- 2Python codecs.open方法代碼示例- 純淨天空
本文整理匯總了Python中codecs.open方法的典型用法代碼示例。如果您正苦於以下問題:Python codecs.open方法的具體用法?Python codecs.open怎麽用?
- 3codecs — Codec registry and base classes — Python 3.10.7 ...
This module defines base classes for standard Python codecs (encoders and decoders) ... codecs. o...
- 4Difference between open and codecs.open in Python
open accepts encoding and newline parameters and interprets them as Python 3 does. Unlike codecs....
- 5Python Codecs Open | Delft Stack
The codecs.open() function works in parallel with the in-built open() function in Python and open...