Unicode字节与代码点(Python)



Inhttp://nedbatchelder.com/text/unipain.html据解释:

在Python 2中,有两种不同的字符串数据类型。一个普通的老人string literal为您提供了一个"str"对象,用于存储字节。如果你使用"u"前缀,可以得到一个存储代码的"unicode"对象点。

代码点和字节之间有什么区别?(我想的不是Python本身,而是一般的概念)。从本质上讲,它只是一堆碎片,对吧?我认为旧的字符串文字将每个8位都视为一个字节,并按原样处理,我们将字节解释为整数,这允许我们将其映射到ASCII和扩展字符集。将整数解释为一组字符和将"代码点"解释为Unicode字符有什么区别?它说Python的Unicode对象存储"代码点"。除了解释(例如,每个Unicode字符的位以utf-8开头和结尾)之外,这不是和普通的旧字节一样吗?

代码点是一个数字,它充当Unicode字符的标识符。代码点本身不能存储,必须从Unicode编码为字节,例如UTF-16LE。虽然某个字节或字节序列可以表示给定编码中的特定代码点,但如果没有编码信息,就没有任何东西可以将代码点连接到字节。

最新更新