Python中編碼問題:u'/xe6/x97/xa0/xe5/x90/x8d' 類型的轉為utf-8的解決辦法
相信小伙伴們遇到過類似這樣的問題,python2中各種頭疼的轉碼,類似u'/xe6/x97/xa0/xe5/x90/x8d' 的編碼,直接s.decode()是無法解決編碼問題。嘗試了無數辦法,都無法解決。
最終得到完美的解決辦法:
s = u'/xe6/x97/xa0/xe5/x90/x8d' s2 = s.encode('raw_unicode_escape')
print s2 ---->無名
python十六進制字符碼轉中文很簡單,只需decode,再encode即可。
例:現在有一串utf-8的十六進制字符碼串, ‘i am request,/xE6/x88/x91/xE6/x98/xAF/xE8/xAF/xB7/xE6/xB1/x82'
a = 'i am request,/xE6/x88/x91/xE6/x98/xAF/xE8/xAF/xB7/xE6/xB1/x82'.decode('utf-8').encode('utf-8')print a
輸出:i am request,我是請求
假設s='中國'
那么print repr(s)得到的就是16進制字符串
而print s得到的是漢字
>>> s='中國'>>> s'/xe4/xb8/xad/xe5/x9b/xbd'>>> print s中國>>> print repr(s)'/xe4/xb8/xad/xe5/x9b/xbd'>>>
以上這篇Python 16進制與中文相互轉換的實現方法就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持武林站長站。
新聞熱點
疑難解答