title=title.replace(u'【',u'[').replace(u'】',u'[')
但是錯誤:
UnicodeDecodeError: 'ascii' codec can't decode byte 0xe3 in position 0: ordinal not in range(128)
title=title.replace(u'【',u'[').replace(u'】',u'[')
但是錯誤:
UnicodeDecodeError: 'ascii' codec can't decode byte 0xe3 in position 0: ordinal not in range(128)
Ignacio發佈的鏈接非常棒,請仔細閱讀。
大'['是在CJK字符集中,這裏的人可能沒有安裝正確的字體來渲染它。所以我用大膽的[來表示它。
如果您不在乎直接使用Python中的編碼字符串,但這是非常不推薦的,只是「.replace('[','[')」使用字符串而不是unicode。
如果你想,實際上你應該使用unicode來操作Python中的文本,你需要確保你使用的所有文本都是由.decode(string_encoding)
統一編碼的。另外,在sitecustomize.py
中將您的全局默認編碼設置爲'utf-8',這將使系統自動爲您執行.decode('utf-8')
。
這是因爲title
不在首位unicode
。 Decode before using it.
@jsbueno,或許您可以解釋答案的錯誤,而不是僅僅說錯了? – 2012-04-10 01:58:50
@ jsbueno:[WRRRRRROOOOOOOOOOOOOOONNNNNNGGGGGGGGGG !!!!!!!!!!!!](http://codepad.org/Wq0PLl7b) – 2012-04-10 02:05:23
你需要title
是一個Unicode對象,而不是STR對象
如。
title = title.decode("utf-8") # or whatever encoding title is using
您需要告訴我們'title'中的含義 – 2012-04-10 00:58:33