Python 2.X和3.X之间的Unicode内部表示形式没有变化。
绝对不是UTF-16。
已为每个代码单元(字符,代理等)分配了一个范围为(0,2 ** 21)的数字。这称为其“普通”。
确实,您引用的文档说明了一切。大多数Python二进制文件都使用16位常规字符,这将您限制在基本多语言平面(“ BMP”)中,除非您想用替代物来解决(如果您找不到发衫并且钉子床不被使用,则非常方便)生锈)。为了使用完整的Unicode曲目,您最好使用“宽构建”(32位宽)。
简而言之,unicode对象中的内部表示形式是16位无符号整数的数组或32位无符号整数的数组(仅使用21位)。