這不是解碼失敗.這是因為您正在嘗試將結果顯示到控制台.使用print時,它使用預設編碼ascii編碼字串.不要使用列印,它應該工作.
>>> a=u'really long string containing \\u20ac and some other text'
>>> type(a)
>>> a.decode('unicode-escape')
u'really long string containing \u20ac and some other text'
>>> print a.decode('unicode-escape')
traceback (most recent call last):
file "", line 1, in
unicodeencodeerror: 'ascii' codec can't encode character u'\u20ac' in position 30: ordinal not in range(128)
我建議使用idle或其他可以輸出unicode的直譯器,那麼你就不會遇到這個問題.
更新:請注意,這與少乙個反斜槓的情況不同,它在解碼期間失敗,但具有相同的錯誤訊息:
>>> a=u'really long string containing \u20ac and some other text'
>>> type(a)
>>> a.decode('unicode-escape')
traceback (most recent call last):
file "", line 1, in
unicodeencodeerror: 'ascii' codec can't encode character u'\u20ac' in position 30: ordinal not in range(128)
Excel URL解碼函式的使用
function urldecode byval strin urldecode dim sl sl 1 dim tl tl 1 dim key key dim kl kl len key sl instr sl,strin,key,1 do while sl 0 if tl 1 and sl 1 ...
Python解碼郵件
python端的 1 import email 23 fp open test.eml r 開啟eml檔案 4 msg email.message from file fp 5 msg email.message from string str 也可以從字串建立 6 subject msg.get ...
python 編碼解碼
一種編碼想要轉成另一種編碼,需要先解碼成萬國碼 unicode,然後再從unicode轉成其他編碼。例如gbk格式想要轉成utf 8,需要先按照 gbk 的格式 decode 成 unicode,再從 unicode 格式 encode 成utf 8 python3預設使用utf 8編碼,故不用宣告...