python2中字串的型別有兩種:str和unicode,其中unicode是統一編碼方式,它使得字元跟二進位制是一一對應的,因此所有其他編碼的encode都從unicode開始,而其他編碼方式按照相應的編碼decode之後也會變成unicode。而utf-8,gbk編碼的字元都是str。
從乙個介面直接輸入的字串,其預設編碼為系統的預設編碼方式:(又或者是當前所使用的軟體客戶端的編碼方式:比如xshell的編碼方式)
>>> importsys>>> print
sys.getdefaultencoding()
ascii
如在windows下是ascii。
那麼將其轉化為unicode:
>>> s =』匆匆』>>>s
'\xb4\xd2\xb4\xd2
'>>>
>>> s1=s.decode("
gbk"
)>>>
>>>s1u'
\u5306\u5306
'
之後將其編碼為utf8:
>>> s2=s1.encode("utf8")
>>>
>>>s2
'\xe5\x8c\x86\xe5\x8c\x86
'
當python標頭檔案中包含了語句:
#-*- coding:utf-8 -*-
**中輸入的文字預設為utf8編碼。
其他參考:
Python 中的字串編碼
異常處理在之前的學習中我們一直沒有接觸過。哦對,我們甚至還不知道怎麼向程式輸入一段字串。那麼我們在這裡提供乙個小例子。在命令列中,我們輸入 好了,我們已經知道如何輸入乙個字串了,那麼當我們輸入 s raw input enter something 之後按回車,然後,我們按下 ctrl d 這時,我...
Python字串編碼
在python中有些特殊的地方是存在兩種字串,分別為str和unicode字串,他們都繼承自basestring。如 s hello world s為str us u hello world us為unicode。使用help str 和help unicode 可以檢視各自說明,他們都有decod...
python字串編碼
常見字元編碼型別 ascii 美國資訊交換標準碼,是目前計算機中最廣泛使用的字符集編碼。每個 ascii 碼以 1 個位元組 儲存,例如數字字元 0 的 ascii 碼是 0110000,十進位制表示為 48。unicode 為解決世界上上百種語言帶來混合 衝突,各國有各國的標準,顯示很容易出現亂碼...