【Python】前缀

Posted by 西维蜀黍 on 2019-11-04, Last Modified on 2021-09-21

u - Unicode 字符串

Python 中定义一个 Unicode 字符串和定义一个普通字符串一样简单:

>>> u'Hello World !'
u'Hello World !'

引号前小写的"u"表示这里创建的是一个 Unicode 字符串。如果你想加入一个特殊字符,可以使用 Python 的 Unicode-Escape 编码。如下例所示:

>>> u'Hello\u0020World !'
u'Hello World !'

被替换的 \u0020 标识表示在给定位置插入编码值为 0x0020 的 Unicode 字符(空格符)。

其实,\u后面跟四个十六进制数,就可以代表一个Unicode字符。

r

以r或R开头的python中的字符串表示(非转义的)原始字符串,比如:

(r^time/plus/\d{1,2}/$’, hours_ahead)

说明字符串r"XXX"中的XXX是普通字符。

普通字符其实是相对于转义字符而言的,转义字符是指,反斜杠加上对应字母,表示对应的特殊含义的字符串,比如最常见的”\n"(表示换行),"\t"(表示Tab)等。 而如果是以r开头,那么说明后面的字符串的每一个字符,都是普通的字符,即如果是r“\n”,表示一个反斜杠字符,一个字母n,而不是表示换行。

b

在 Python2.x里,b前缀没什么具体意义,只是为了兼容Python3.x的这种写法。

Reference