我一直在玩 python 内置函数,并得到了一些令人困惑的(对我来说)结果。
看看这段代码:
>>> 'ü'.encode()
b'\xc3\xbc'
Run Code Online (Sandbox Code Playgroud)
为什么\xc3\xbc返回(十进制的 195 和 188)?如果您查看ascii 表,我们会看到它ü是第 129 个字符。或者,如果您查看此处,我们会看到这ü是第 252 个 Unicode 字符,这就是您从中得到的
>>> ord('ü')
252
Run Code Online (Sandbox Code Playgroud)
那么来自哪里\xc3\xbc,为什么它被分成两个字节?当你 decode: 时b'\xc3\xbc'.decode(),它怎么知道这两个字节是一个字符?