python字符串前的字母的含义:b\r\f\u

1、字符串前加 u

例:u”我是含有中文字符组成的字符串。”

作用:重要的作用是用来指明后面字符串的编码方式

后面字符串以 Unicode 格式 进行编码,一般用在中文字符串前面,防止因为源码储存格式问题,导致再次使用时出现乱码。

2、字符串前加 r

例:r”\n\n\n\n”  # 表示一个普通字符串 \n\n\n\n,而不表示换行了。

作用:将字符串中的具有特殊含义的字符意义去掉,比如:\n表示换行,若前面加上r, 即:r’\n’,就表示一个斜行和小写字母n了。

去掉反斜杠的转义。

(特殊字符:即那些,反斜杠加上对应字母,表示对应的特殊含义的,比如最常见的”\n”表示换行,”\t”表示Tab等。 )

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

3、字符串前加 b

例: response = b’

Hello World!

‘ # b’ ‘ 表示这是一个 bytes 对象

作用:将字符串表示为:字节对象类型,类型:bytes

b” “前缀表示:后面字符串是bytes 类型。

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

如:send 函数的参数和 recv 函数的返回值都是 bytes 类型

附:【重要】

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

str.encode('utf-8') # 编码
bytes.decode('utf-8') # 解码

4、字符串前加 f

作用:格式化字符串,要求:要在3.6版本python以后才可以用;

好处:这样就不用再去关注该用%s,还是用%d,%f等等了。只要用大括号,将变量的名字写在大括号中即可了。

说明:1、大括号中,即可以是一个变量名,解析后,用变量的值进行替换;

​ 2、大括号中,也可以是一个表达式,经过解释计算后,得出最后的值。

import time
t0 = time.time()
time.sleep(1)
name = 'processing'
# 以 f开头: 表示在字符串内支持大括号内的python 表达式
print(f'{name} done in {time.time() - t0:.2f} s')
# processing done in 1.00 s