💡
原文英文,约200词,阅读约需1分钟。
📝
内容提要
Python 3.3 引入了三种字符串格式:UCS-1、UCS-2 和 UCS-4。可以使用 PyUnicode_KIND() 函数确定字符串使用的格式。要访问数据,应使用相应的函数。C 扩展应为每种格式提供代码路径以优化性能。
🎯
关键要点
-
Python 3.3 引入了三种字符串格式:UCS-1、UCS-2 和 UCS-4。
-
PyUnicode_1BYTE_KIND 表示 Unicode 范围 [U+0000; U+00ff],使用 1 字节/字符。
-
PyUnicode_2BYTE_KIND 表示 Unicode 范围 [U+0000; U+ffff],使用 2 字节/字符。
-
PyUnicode_4BYTE_KIND 表示 Unicode 范围 [U+0000; U+10ffff],使用 4 字节/字符。
-
Python str 对象必须始终使用最紧凑的格式,例如仅包含 ASCII 字符的字符串必须使用 UCS-1 格式。
-
可以使用 PyUnicode_KIND() 函数确定字符串使用的格式。
-
访问数据时应使用相应的函数:PyUnicode_1BYTE_DATA()、PyUnicode_2BYTE_DATA() 和 PyUnicode_4BYTE_DATA()。
-
为了获得最佳性能,C 扩展应为这三种字符串原生格式提供三条代码路径。
🏷️
标签
➡️