如何在 python 中有效地在 unicode 代码点和 UTF-8 文字之间进行转换?
How to efficiently convert between unicode code points and UTF-8 literals in python?
我有大量 table 个 unicode 代码点:http://www.unicode.org/Public/UCD/latest/ucd/UnicodeData.txt
我想渲染,为了这样做:我知道代码点必须转换为 utf-8 文字字符串,然后该文字字符串(被视为字节对象)可以是转换成我要渲染的字符。
作为给定十六进制数的具体示例:
"00A1"
我需要将其转换为表达式:
"\xc2\xa1"
然后在 python 中很容易将其转换为字符“¡”。
我的问题是如何将“00A1”转换为“\xc2\xa1”,反之亦然[最好使用内置方法或流行的第 3 方库]
似乎没有支持该功能的内置方法。
我目前的工作:
string.encode 方法允许我们将“¡”转换为“\xc2\xa1”
bytestring.decode 方法允许我们将“\xc2\xa1”转换为“¡”
但不幸的是,访问字符的十六进制索引表示(从 00A1 来回转换)对我来说仍然遥不可及。
我有大量 table 个 unicode 代码点:http://www.unicode.org/Public/UCD/latest/ucd/UnicodeData.txt
我想渲染,为了这样做:我知道代码点必须转换为 utf-8 文字字符串,然后该文字字符串(被视为字节对象)可以是转换成我要渲染的字符。
作为给定十六进制数的具体示例:
"00A1"
我需要将其转换为表达式:
"\xc2\xa1"
然后在 python 中很容易将其转换为字符“¡”。
我的问题是如何将“00A1”转换为“\xc2\xa1”,反之亦然[最好使用内置方法或流行的第 3 方库]
似乎没有支持该功能的内置方法。
我目前的工作:
string.encode 方法允许我们将“¡”转换为“\xc2\xa1”
bytestring.decode 方法允许我们将“\xc2\xa1”转换为“¡”
但不幸的是,访问字符的十六进制索引表示(从 00A1 来回转换)对我来说仍然遥不可及。