python中decode和encode的使用

2021-06-18 08:03:42 字數 1152 閱讀 9694

python中的編碼是採用unicode編碼的,在做編譯轉換時,需要使用unicode作為中間編碼:

情況一:編碼一-->unicode編碼

將其他編碼的字串解碼:decode成unicode;

a.decode(『gb2312』)
或者:

unicode.unicode(a,'gb2312')
情況二:

unicode編碼-->編碼一

從unicode編碼成另一種編碼就使用encode!

a.encode("gb2312")
情況三:

編碼一-->編碼二:就是兩種非unicode編碼之間的轉化呢?

編碼一----->解碼為unicode----->編碼成編碼二

unicode.unicode(a,'gb2312').encode("ascii")
用法:str.decode("ascii"):將ascii編碼的字串str解碼稱為unicode編碼

str.encode("ascii"),將unicode 編碼轉化成ascii編碼!

在編碼之前,首先應該知道的是,原始字串的編碼格式:

在python中,可以通過第三方庫chardet進行查詢:

ascii編碼,就是unicode乙個子集麼?因為我發現,乙個ascii編碼的字串,判斷其是不是unicode編碼的時候,結果返回的是true!(這幾個的關係,不太懂!)

如何判斷乙個字串是不是unicode編碼呢?

********************==utf-8的情況***********************************===

如果有乙個test = "釣魚島是中國的"!

上述情況,如果在utf-8檔案中,它就是utf-8編碼,如果在gb2312檔案中,那就是gb2312編碼,那如果需要在這兩個編碼之間轉化呢?首先進行解碼(decode),稱為unicode編碼,再進行編碼encode,如果乙個編碼已經是unicode編碼了,如果再次對其進行編碼將會出錯。

如果指定檔案的編碼方式,那麼就按照系統預設的編碼方式,按照如下的語句查詢系統的預設編碼方式

上圖是python2.7.3的預設編碼方式,是python3的編碼方式

python中decode和encode的區別

coding utf 8 import sys 首先要搞清楚,字串在python內部的表示是unicode編碼,因此,在做編碼轉換時,通常需要以unicode作為中間編碼,即先將其他編碼的字串解碼 decode 成unicode,再從unicode編碼 encode 成另一種編碼。decode的作用...

python中decode和encode的區別

import sys 字串在python內部的表示是unicode編碼,因此,在做編碼轉換時,通常需要以unicode作為中間編碼,即先將其他編碼的字串解碼 decode 成unicode,再從unicode編碼 encode 成另一種編碼。decode的作用是將其他編碼的字串轉換成unicode編...

Python中的decode解碼和encode編碼

decode是解碼 讀取文字或網頁時的過程是decode解碼,需要依據文字或網頁的編碼格式來指定解碼格式。它是將不是unicode的格式解碼 換 成unicode格式讀取到記憶體中,使用時必須知道物件源格式。如str1.decode gb2312 表示將gb2312編碼的字串轉換成unicode編碼...