編碼轉(zhuǎn)換
平常在寫python代碼時(shí)經(jīng)常遇到輸出亂碼,unicode、gbk、utf-8等等什么時(shí)候該用哪個(gè)確實(shí)很煩。多數(shù)情況在頭部聲明了coding:utf-8似乎并沒起作用?
其實(shí)不是這樣的。講講我自己對于 decode 和 encode 的理解吧
decode 與 encode
decode 將某種編碼解碼成 unicode
encode 將 unicode 編碼成某種編碼
在我的理解中 unicode 相當(dāng)于中間碼。當(dāng)需要把使用 gbk 編碼的網(wǎng)頁源碼用python程序輸出時(shí)其文本往往是亂碼,這時(shí)候可以先把 gbk decode成unicode,再把 unicode encode成 utf-8
html.decode('gbk').encode('utf-8')