文章出處

python中文處理相信迷惑過不少同學。下面說說python2/3的encode和decode函數。

python2中,使用decode()和encode()來進行解碼和編碼,以unicode類型作為中間類型。即
    decode             encode
str ---------> unicode --------->str

示例(注意encode和decode的編碼必須保持一致):

u = u'中文'                       #unicode對象u
gb2312_str = u.encode('gb2312')           #gb2312編碼字符串
gbk_str = u.encode('gbk')               #gbk編碼字符串
utf8_str = u.encode('utf-8')              #utf-8編碼字符串
gb2312_u = gb2312_str.decode('gb2312')     #gb2312編碼的unicode
utf8_u = gb2312_str.decode('utf-8')        #utf-8編碼的unicode,此處因為編解碼方法不一致將導致無法還原原unicode類型

python2編解碼處理給人的感覺是較復雜。于是在python3中取消了unicode類型,代替以unicode編碼的字符串類型str。str和bytes關系如下:
    encode              decode
str ---------> bytes --------->str


文章列表


不含病毒。www.avast.com
arrow
arrow
    全站熱搜
    創作者介紹
    創作者 大師兄 的頭像
    大師兄

    IT工程師數位筆記本

    大師兄 發表在 痞客邦 留言(0) 人氣()