python字符串前缀u,r,b的区别

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/zgcr654321/article/details/82749146

前缀u:

以前缀u开头的Python字符串表示该字符串为unicode编码(unicode为python interpreter内部统一的编码格式)。

python3中,字符串的存储方式都是以Unicode字符来存储的,所以前缀带不带u,其实都一样。

前缀r:

以r或R开头的python中的字符串表示该字符串为非转义的原始字符串,即字符串中默认都是普通字符,没有转义字符。

如:

s = 'ABC\\-001'中,\\为转义字符,实际为\

s = r'ABC\\-001'中,\\被认为是普通字符,就是\\

以r开头的字符,常用于正则表达式,对应着re模块。

前缀b:

前缀b开头的Python字符串代表是bytes类型的字符串。

这类字符串中的字符必须是十六进制数,或者ASCII字符。

注意:

python3.x里默认的str是unicode编码, b前缀代表的就是bytes 。

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

猜你喜欢

转载自blog.csdn.net/zgcr654321/article/details/82749146