使用 Python 将中文 Unicode 码位转换为字符串

我有一个包含 8105 个中文字符的Unicode 代码点的文件,看起来类似于


U+516D

U+4E03

U+516B

我理解这些代表以下汉字


六 [Chinese character for 'six', Reference http://hanzidb.org/character/%E5%85%AD]

七 [Chinese character for 'seven', Reference http://hanzidb.org/character/%E4%B8%83]

八 [Chinese character for 'eight', Reference http://hanzidb.org/character/%E5%85%AB]

如何使用 Python 3 将包含字符串U+516D, U+4E03,的文件转换U+516B为对应的汉字?


任何帮助,将不胜感激。


提前致谢。


慕田峪9158850
浏览 206回答 2
2回答

HUX布斯

def get_character(string):    return chr(int(string[2:], 16))>>> get_character("U+4E03")'七'>>> get_character("U+516D")'六'>>> get_character("U+4E03")'七'>>> get_character("U+516B")'八'这是我所知道的最简单的方法,注意它不会检查正确的格式,只是砍掉前 2 个字符,假设U+

慕容708150

此正则表达式会将U+hhhh格式(4-6 个十六进制字符)的文本转换为其相应的 Unicode 代码点:import res = 'U+516D U+4E03 U+516B's = re.sub(r'U\+([0-9A-F]{4,6})',lambda m: chr(int(m.group(1),16)),s)print(s)输出:六 七 八
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python