如何确定Python是使用UCS-2还是UCS-4编译的?

正如标题所说。


$ ./configure --help | grep -i ucs

  --enable-unicode[=ucs[24]]

搜索官方文档后,我发现:


sys.maxunicode:一个整数,为Unicode字符提供最大的支持代码点。此值取决于配置选项,该选项指定将Unicode字符存储为UCS-2还是UCS-4。


此处不清楚的是-哪些值对应于UCS-2和UCS-4。


该代码有望在Python 2.6+上运行。


qq_遁去的一_1
浏览 903回答 3
3回答

幕布斯6054654

使用--enable-unicode = ucs4构建时:>>> import sys>>> print sys.maxunicode1114111使用--enable-unicode = ucs2构建时:>>> import sys>>> print sys.maxunicode65535

慕丝7291255

对于UCS-2,它是0xFFFF(或65535),对于UCS-4是0x10FFFF(或1114111):Py_UNICODEPyUnicode_GetMax(void){#ifdef Py_UNICODE_WIDE    return 0x10FFFF;#else    /* This is actually an illegal character, so it should       not be passed to unichr. */    return 0xFFFF;#endif}UCS-4模式下的最大字符由UTF-16中可表示的最大值定义。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python