2013-10-09 51 views
0

當我鍵入在Python 2.X解釋如下法國字符,它給了我一個UTF-8字節序列:蟒蛇2.x和3.x字符編碼差異

>>> x = 'é' 
>>> x 
'\xc3\xa9' 

但在同樣的事情Python的3.X導致以下行爲:

>>> x = 'é' 
>>> x 
'é' 

但據說爲Python 3默認編碼是UTF-8。 有人可以解釋這種行爲嗎?

回答

4

你的Python 2的例子是一個字節串,你的Python 3是一個unicode字符串。將Python 2示例前綴爲u以獲取等效對象。

此外,Unicode字符串在Python repr 3名改爲顯示字符,而不是碼點。