'☃'.encode(“utf8”)与ord(“utf8”)不同☃')

2024-09-29 01:23:41 发布

您现在位置:Python中文网/ 问答频道 /正文

我测试了以下unicode:

In [34]: snowman = "\u2603"
In [35]: snowman
Out[35]: '☃'

编码雪人

In [36]: ds = snowman.encode("utf-8")
In [37]: ds
Out[37]: b'\xe2\x98\x83'

但是,当我用ord()检查它时

In [38]: ord('☃')
Out[38]: 9731

与b'\xe2\x98\x83'不同

我怎么能理解呢?你知道吗


Tags: in编码unicodedsoututfencodexe2
1条回答
网友
1楼 · 发布于 2024-09-29 01:23:41

^{}返回Unicode码点- 标识给定字符的有点任意的数字。你知道吗

^{} 返回以某种编码表示给定字符串的字节序列。。。 如果字符串可以在该编码中表示。你知道吗

编码和码点仅在它们都标识相同字符的意义上相关。你知道吗

Ned Batchelder对字节字符之间的差异进行了出色的介绍 “Pragmatic Unicode, or, How Do I Stop the Pain?” (36分钟)。 他介绍了python2和python3,以及它们解决这个问题所采用的截然不同的方法。你知道吗

相关问题 更多 >