1. 程式人生 > >python中字符串編碼轉換

python中字符串編碼轉換

utf-8 str 一個 bubuko nic 你好 bsp encode tro

字符串編碼轉換程序員最苦逼的地方,什麽亂碼之類的幾乎都是由漢字引起的。
其實編碼問題很好搞定,只要記住一點:

任何平臺的任何編碼,都能和Unicode互相轉換。

UTF-8與GBK互相轉換,那就先把UTF-8轉換成Unicode,再從Unicode轉換成GBK,反之同理。

註意:在python3中encode,在轉碼的同時還會把string 變成bytes類型,decode在解碼的同時還會把bytes變回string

技術分享圖片

# 這是一個 UTF-8 編碼的字符串
utf8Str = "你好地球"

# 1. 將 UTF-8 編碼的字符串 轉換成 Unicode 編碼
unicodeStr = utf8Str.decode("
UTF-8") # 2. 再將 Unicode 編碼格式字符串 轉換成 GBK 編碼 gbkData = unicodeStr.encode("GBK") # 1. 再將 GBK 編碼格式字符串 轉化成 Unicode unicodeStr = gbkData.decode("gbk") # 2. 再將 Unicode 編碼格式字符串轉換成 UTF-8 utf8Str = unicodeStr.encode("UTF-8")

decode的作用是將其它編碼的字符串轉換成Unicode編碼
encode的作用是將Unicode編碼轉換成其他編碼的字符串
一句話:UTF-8是對Unicode字符集記性編碼的一種編碼格式

python中字符串編碼轉換