python將unicode和str互相轉(zhuǎn)化的實現(xiàn)
問題一:
將u’u810fu4e71’轉(zhuǎn)換為’u810fu4e71’
方法:
s_unicode = u’u810fu4e71’s_str = s_unicode.encode(’unicode-escape’).decode(’string_escape’)
問題二:
將’u810fu4e71’轉(zhuǎn)換為u’u810fu4e71’
方法:
s_str = ’u810fu4e71’s_unicode = s_str.decode(’unicode-escape’)
補充知識:Python最簡單的解決列表中只打印UNICODE而不是中文字符的方法
答案就是用json模塊:
例如:
import json data=[{u’u663eu793a’: [u’python’, u’u8bd5u9a8c’], u’u6570u91cf’: 22, u’u8bedu8a00’: u’python’}]data_c = u’u663eu793a’print dataprint data_c res_data=json.dumps(data,ensure_ascii=False,encoding='gb2312')print res_data
在沒有進(jìn)行格式轉(zhuǎn)換時,輸出為:
>>>[{u’u663eu793a’: [u’python’, u’u8bd5u9a8c’], u’u6570u91cf’: 22, u’u8bedu8a00’: u’python’}]
>>>顯示
可見非列表中的數(shù)據(jù)在輸出時是會轉(zhuǎn)換成中文顯示出來的,但列表中的unicode數(shù)據(jù)不會。
轉(zhuǎn)換后,輸出為:
>>>[{'顯示': ['python', '試驗'], '數(shù)量': 22, '語言': 'python'}]
如果后面這種輸出是想要的格式,那么就利用現(xiàn)成的json模塊將原列表格式轉(zhuǎn)換為json字符串輸出,并設(shè)置好編碼格式,就可以了。
當(dāng)還需要再用這部分用來顯示的數(shù)據(jù),譬如以后什么時候又想直接用python來讀取log文件中這種看起來比較方便的帶中文的偽列表,那么再用json.loads轉(zhuǎn)換回去即可。
以上這篇python將unicode和str互相轉(zhuǎn)化的實現(xiàn)就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. python如何實現(xiàn)word批量轉(zhuǎn)HTML2. python excel和yaml文件的讀取封裝3. python3實現(xiàn)往mysql中插入datetime類型的數(shù)據(jù)4. python爬蟲實戰(zhàn)之制作屬于自己的一個IP代理模塊5. moment轉(zhuǎn)化時間戳出現(xiàn)Invalid Date的問題及解決6. Android中的緩存7. 關(guān)于 Android WebView 的內(nèi)存泄露問題8. java——Byte類/包裝類的使用說明9. Python中內(nèi)建模塊collections如何使用10. Spring boot整合連接池實現(xiàn)過程圖解
