我有一个带有字符串 '\u96e8' 的变量,我想将其转换为 unicode,因为函数 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贡献1841条经验 获得超3个赞
您可以使用unicode-escape编解码器将字节串解码为 unicode 。
>>> message = '\u96e8'
>>> unicode_message = message.decode('unicode-escape')
>>> unicode_message
u'\u96e8'
>>> print unicode_message
雨
30秒到达战场
TA贡献1828条经验 获得超6个赞
使用ast.literal_eval:
>>> message = '\u96e8'
>>> ast.literal_eval('u"{}"'.format(message))
u'\u96e8'
诀窍是构造一个包含unicode字符串文字的字符串作为参数传递给literal_eval. 也就是说,u"\u96e8"而不仅仅是\u96e8.
(不过,这只是部分正确。如果它message本身的值包含双引号,它就会失败。可能还有其他情况也会失败。)
- 2 回答
- 0 关注
- 214 浏览
添加回答
举报
0/150
提交
取消