python r, b, u, f 前缀详解

1、r前缀

一般来说,'\n'是一个换行符,是一个字符串;而加上r为前缀后,不会以任何特殊方式处理反斜杠。因此,r"\n" 是包含 '\' 和 'n' 的双字符字符串;示例如下:

python 复制代码
>>> print(r'\n')
\n
>>> print('\n')


>>>

"r"也常用于正则表达式中,\b在正则中代表空字符串

python 复制代码
>>> re.findall(r'\bf[a-z]*', 'which foot or hand fell fastest')
['foot', 'fell', 'fastest']
>>> re.findall('\bf[a-z]*', 'which foot or hand fell fastest')
[]
>>>

以"r"为前缀的字符串,表示的是原始字符串。相对于普通字符串,原始字符串中的内容会原样输出。即使字符串中含有转义字符,如常见的换行符"\n"、缩进符"\t"等,在原始字符串中它们不会进行转义,都会原样输出。

详见正则链接

2、b前缀

加上b前缀代表是byte类型,示例如下:

python 复制代码
>>> type('sss')
<class 'str'>
>>> type(b'sss')
<class 'bytes'>
>>>

其中有三种情况,如下所示:

  • Single quotes: b'still allows embedded "double" quotes' 即单引号可以包含双引号
  • Double quotes: b"still allows embedded 'single' quotes" 即双引号可以包含单引号
  • Triple quoted: b'''3 single quotes''', b"""3 double quotes""" 即三引号可以包含单引号,也可以包含双引号

详见byte链接

3、u 前缀

u''代表的是对字符串进行unicode编码。python3.0以上的版本,默认的编码就是UTF-8编码,而在2.0版本,python使用的是ascii编码

4、f 前缀

python 复制代码
>>> var1='hello world'
>>> print(f'i am lichf {var1}')
i am lichf hello world
>>>

详见我的另一篇介绍format的文章

详见f-string链接

相关推荐
金銀銅鐵14 小时前
[Python] 扩展欧几里得算法
python·数学·算法
Duckdblab15 小时前
DuckDB 性能调优终极指南:打造闪电般的分析体验
python
带派擂总15 小时前
Python全栈开发精华版最全合集(包含各种面试题) Day24_异常和错误
python
金銀銅鐵18 小时前
n^5 和 n 的个位数是否总相等?
python·数学
aqi001 天前
15天学会AI应用开发(九)利用Chroma持久化向量数据
人工智能·python·大模型·ai编程·ai应用
金銀銅鐵1 天前
借助 Pygame 探索最大公约数的规律
python·数学·游戏
ServBay2 天前
9 个 Python 第三方库推荐,不用 AI 都好像多出一个团队
后端·python
用户8356290780512 天前
如何使用 Python 添加和管理 Excel 批注(完整示例)
后端·python
用户8356290780512 天前
使用 Python 管理 Excel 工作表:创建、复制、删除与重命名
后端·python