1. 程式人生 > >Python基礎知識——encode和decode函式

Python基礎知識——encode和decode函式

以前我們介紹過,Python2.x中預設的編碼的基礎型別是unicode編碼的型別,在Python3.x才轉化為基於unicode的字串。

那麼我們在Python2.x的學習中就會遇到各種各樣的編碼問題,encode和decode函式就是很好的幫我們解決這樣問題的工具。

下面的程式中有詳細的介紹和例子!~

在Python2.x中:

u = u'中文' #顯示指定unicode型別物件u
str = u.encode('gb2312') #以gb2312編碼對unicode對像進行編碼
str1 = u.encode('gbk') #以gbk編碼對unicode對像進行編碼
str2 = u.encode('utf-8') #以utf-8編碼對unicode對像進行編碼
u1 = str.decode('gb2312')#以gb2312編碼對字串str進行解碼,以獲取unicode
u2 = str.decode('utf-8')#如果以utf-8的編碼對str進行解碼得到的結果,將無法還原原來的unicode型別

在Python3.x中:

u = '中文' #指定字串型別物件u
str = u.encode('gb2312') #以gb2312編碼對u進行編碼,獲得bytes型別物件str
u1 = str.decode('gb2312')#以gb2312編碼對字串str進行解碼,獲得字串型別物件u1
u2 = str.decode('utf-8')#如果以utf-8的編碼對str進行解碼得到的結果,將無法還原原來的字串內容

但是我們在讀取、寫入檔案的時候就要注意以檔案的格式來判斷用什麼方式來操作了,txt檔案預設都是utf-8當然你也可以自己設定編碼格式。

我們在對txt檔案進行操作時,最好都將編碼格式轉化為utf-8來方便操作吧!~