2017-04-24 72 views

回答

3

因为在您的字符串中有两个unicode代码点,并且字符串是一个unicode代码点序列(在Python 3中)。

在Python 2中,这不是一个字符串,而是一个unicode对象,它又是一个unicode代码点序列。

+0

Python 3.3+和更早版本的宽版本允许字符串中的单个代理代码,即使它不是有效的Unicode。在这些情况下,repr是'u'\\ ud800 \\ udc00''。在狭义构建中,repr将是'u'\ U00010000'(在Python 3中没有'u'前缀),但长度将为2。 – eryksun