python 字符串編碼與解碼


1. 字符串在Python內部的表示是unicode編碼,因此,在做編碼轉換時,通常需要以unicode作爲中間編碼,即先將其他編碼的字符串解碼(decode)成unicode,再從unicode編碼(encode)成另一種編碼。 

decode的作用是將其他編碼的字符串轉換成unicode編碼,如str1.decode('gb2312'),表示將gb2312編碼的字符串str1轉換成unicode編碼。 

encode的作用是將unicode編碼轉換成其他編碼的字符串,如str2.encode('gb2312'),表示將unicode編碼的字符串str2轉換成gb2312編碼。 

因此,轉碼的時候一定要先搞明白,字符串str是什麼編碼,然後decode成unicode,然後再encode成其他編碼


str = "中國"

print str --->中國

直接 str --- >'\xe4\xb8\xad\xe5\x9b\xbd'

原因:str並不是unicode碼( isinstance (s,unicode) --> false )


2. 如何獲得系統默認編碼?

sys.getdefaultencoding()


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章