2010-04-20 574 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

相关问题