python怎么把unicode码转汉字?

譬如输入一个5206,输出对应的汉字“分”(u'\u5206'),接口大概像这样

    def translateUnicodeNum2Chinese(unicodeNum):
        return xxx;
阅读 9k
4 个回答

构造字符串然后转化

import codecs
u = "\\u{:0>4}".format(unicodeNum) //没有考虑unicodeNum长度超过4位的情况
print codecs.decode(u,"unicode_escape")

直接根据数字转化
@chenxing 的方法也可以,不过不能5206这个数值直接带入把unichr函数,unichr函数需要的是16进制的数值,把你的unicodeNum需要转化为16进制数,然后再unichr(n)而不是直接unichr(5206)

你说的translateUnicodeNum2Chinese(unicodeNum)这个unicodeNum参数类型是什么,16进制数字的字面量"5206"?还是十六进制数字0x5206,亦或者十进制数字5206?

decode(unicode).encode(utf8)。先unicode解码,在utf8编码。我用这种方法成功显示。

Python2 : unichr(0x5206)

Pythno3 : chr(0x5206)

新手上路,请多包涵

Python2:
unichr(0x5206)

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题