gpt4 book ai didi

python - Unicode 对象在 Python 中是如何表示的?

转载 作者:行者123 更新时间:2023-11-30 23:34:10 24 4
gpt4 key购买 nike

我已经阅读了大量有关 python Unicode 编码等的内容,我想现在对它有了一些了解。但最后一件事仍然存在。

这是我的理解

在 python 2.x 中,str 对象将字符串表示为字节,根据这些字节的编码,我们可以获得不同的字符。这是我知道的简化,但对于这个问题来说并不重要。

然而,我被告知 unicode 对象将字符串表示为 unicode 代码点,因此基本上是整数。不再像我们之前那样模糊地将字节解释为它们的值。

我的问题是这些 Unicode 代码点/整数在 python 中是如何表示的,它们只是 4 字节数字吗?这是否意味着它们比 str 对应物使用更多的空间。并不是我担心空间问题,我只是想了解一下。

最佳答案

在 3.3 之前的 CPython 中,unicode 对象中的文本数据被编码为 UCS-2 或 UCS-4(取决于编译时选项)并存储在 char*。 3.3 使用variable representation对于 unicode 数据,取决于字符串中的最高代码点。 Jython 和 IronPython 使用其 native 类型进行 unicode 存储。

关于python - Unicode 对象在 Python 中是如何表示的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18334483/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com