【Python】Python 字符串前面加u,r,b,f的使用与含义总结

背景

在python程序中,有时我们会看到一些带有一定前缀的字符串,例如字符中有u,r,f,b等等。这些写法又代表什么意思,有什么作用呢?下面总结一下当前遇到的一些情况进行总结。

字符串前加u

例如:u"这是我测试的中文字符串"
作用:后面字符串以 Unicode 格式 进行编码,一般用在中文字符串前面,防止因为源码储存格式问题,导致再次使用时出现乱码。

字符串前加r

例:r"\n\t”  
表示一个普通生字符串 \n\t,而不表示换行和tab键了,或者也可以理解为raw。
作用:去掉反斜杠的转移机制。
(特殊字符:即那些,反斜杠加上对应字母,表示对应的特殊含义的,比如最常见的”\n”表示换行,”\t”表示Tab等。 )

应用:常用于正则表达式,对应着re模块等。

字符串前加b

例: response = b'<h1>Hello World!</h1>'

b’ ’ 表示这是一个 bytes 对象,

作用:b" "前缀表示:后面字符串是bytes 类型。

用处:网络编程中,服务器和浏览器只认bytes 类型数据。

在 Python3 中,bytes 和 str 的互相转换方式是

str.encode('utf-8')
bytes.decode('utf-8')

字符串前加 f

该种类型主要是格式化输出结果数据。

model = "text_cnn"
loss = 0
epoch = 23
print(f'{model} train {epoch} epoch, loss {loss}')
上一篇:巧解进制转换题


下一篇:kaggle之Digit Recognizer