1. 程式人生 > >python中字串編碼方式小結

python中字串編碼方式小結

         Python2中字串的型別有兩種:str和unicode,其中unicode是統一編碼方式,它使得字元跟二進位制是一一對應的,因此所有其他編碼的encode都從unicode開始,而其他編碼方式按照相應的編碼decode之後也會變成unicode。而utf-8,gbk編碼的字元都是str。

         從一個介面直接輸入的字串,其預設編碼為系統的預設編碼方式:

>>> import sys
>>> print
sys.getdefaultencoding() ascii

 

如在windows下是ascii。

那麼將其轉化為unicode:

>>> s =’匆匆’
>>> s
'\xb4\xd2\xb4\xd2'
>>>
>>> s1=s.decode("gbk")
>>>
>>> s1
u'\u5306\u5306'

 

之後將其編碼為utf8:

>>> S2=s1.encode("utf8")
>>>
>>> S2
'\xe5\x8c\x86\xe5\x8c\x86'

 

當python標頭檔案中包含了語句:

#-*- coding:utf-8 -*-

 

程式碼中輸入的文字預設為utf8編碼。

 

其他參考:http://www.cnblogs.com/schut/p/8407258.html