python中字符串編碼轉換
阿新 • • 發佈:2019-01-14
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中字符串編碼轉換