1. 程式人生 > >python2.7處理unicode編碼問題

python2.7處理unicode編碼問題

一、
字串在Python內部是unicode編碼,所以從資料庫調取資料,又或者request一個api返回的資料都是unicode編碼形式。想要支援中文,建議將編碼轉為utf-8。下面介紹兩個相關函式。
1、decode():將其他編碼的字串轉換成unicode編碼,如str1.decode(‘gb2312’),表示將gb2312編碼的字串str1轉換成unicode編碼。
2、encode():將unicode編碼轉換成其他編碼的字串,如str2. encode(‘utf-8’),表示將unicode編碼的字串str2轉換成utf-8。
二、
要轉換編碼,則首先就需要了解字串的編碼形式:
isinstance(s, unicode)
如返回True則表示s是unicode編碼
三、
解決辦法舉例:
將一個 有若干個unicode編碼的字典元素的列表 轉換為 有若干個utf-8編碼的字典元素的列表
dic = []
for ep in unicodelist:
dic1 = {“endpoint”:ep[“endpoint”].encode(‘utf-8’), “id”:ep[“id”]}
dic.append(dic1)