天涯盡頭無(wú)女友
2021-11-16 09:50:40
我有一個(gè)帶有字符串 '\u96e8' 的變量,我想將其轉(zhuǎn)換為 unicode,因?yàn)楹瘮?shù) kanji_to_romaji() 只接受 unicode。我該怎么做?我在 python 2.7# -*- coding: UTF-8 -*-from kanji_to_romaji import kanji_to_romajimessage = '\u96e8'message = unicode(message)x = kanji_to_romaji(message)print(x)
2 回答

偶然的你
TA貢獻(xiàn)1841條經(jīng)驗(yàn) 獲得超3個(gè)贊
您可以使用unicode-escape編解碼器將字節(jié)串解碼為 unicode 。
>>> message = '\u96e8'
>>> unicode_message = message.decode('unicode-escape')
>>> unicode_message
u'\u96e8'
>>> print unicode_message
雨

30秒到達(dá)戰(zhàn)場(chǎng)
TA貢獻(xiàn)1828條經(jīng)驗(yàn) 獲得超6個(gè)贊
使用ast.literal_eval:
>>> message = '\u96e8'
>>> ast.literal_eval('u"{}"'.format(message))
u'\u96e8'
訣竅是構(gòu)造一個(gè)包含unicode字符串文字的字符串作為參數(shù)傳遞給literal_eval. 也就是說(shuō),u"\u96e8"而不僅僅是\u96e8.
(不過(guò),這只是部分正確。如果它message本身的值包含雙引號(hào),它就會(huì)失敗。可能還有其他情況也會(huì)失敗。)
- 2 回答
- 0 關(guān)注
- 237 瀏覽
添加回答
舉報(bào)
0/150
提交
取消