当我在Python 2.X解释器中键入以下法语字符时,它给出了一个utf-8字节序列:
>>> x = 'é'
>>> x
'\xc3\xa9'
但是在Python 3.X上同样的事情导致以下行为:
>>> x = 'é'
>>> x
'é'
但据说Python 3的默认编码是utf-8。 有人可以解释这种行为吗?
答案 0 :(得分:4)
您的Python 2示例是一个字节字符串,您的Python 3是一个unicode字符串。使用u
作为Python 2示例的前缀以获取等效对象。
此外,Python 3中的repr
个unicode字符串会更改为显示字符而不是代码点。