2010-04-20 232 views

回答

52

前導\x轉義序列意味着接下來的兩個字符被解釋爲十六進制數字的字符代碼,所以\xaa等於chr(0xaa),即chr(16 * 10 + 10) - 一個小的突出小寫字符'a'

轉義序列記錄在Python文檔的簡短表here中。

+0

chr(170)只能在Python 3.X的上下文中沒有提及特定的編碼,它實際上是一個「女性順序指示符」......西班牙語正字法的一個特點,以及它的兄弟姐妹U + 00BA「男性序數指標「。 – 2010-04-20 03:49:05

+0

@John:在IronPython中,和Python 3一樣,''\ xaa''是一個Unicode字符串。您是否碰巧在該問題上看到了「IronPython」標籤? (順便說一句,我不喜歡你的說法,例如,'2ª'爲「second [[女性]]」是「西班牙語正字法的一個特點」 - 我的意思是,例如,意大利語,我的母語,切碎的肝臟是什麼? )。 – 2010-04-20 04:06:27

+0

如果你想要超過2個十六進制數字,你會怎麼做 – Hippolippo 2018-02-08 22:13:11

-4

這是unicode字符逃脫。請參見「的Unicode構造函數」上PEP 100

+2

不,它不是。它用於在'str'中定義一個特定的字節,而不是用一個unicode代碼點,這是用'u'\ u ...'符號完成的。 – 2010-04-20 03:48:45

+0

@Mike,@Jake:這是爲了兩個。 '\ xaa'是一個str對象。 u'\ xaa'是一個unicode對象。 'print repr(unichr(170))'產生'u'\ xaa'' – 2010-04-20 03:54:03

+0

哎呀。嚴重誤讀。感謝您的高舉。 – 2010-04-20 04:02:50

相關問題