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链接

相关推荐
ikun_文5 小时前
Python高级特性
python
用户872185012435 小时前
港股投资者必备:三大数据源对比,哪种最适合实时行情与回测?
python
溪语流沙6 小时前
【Web全栈进阶】Alembic数据库迁移:改表结构不再删库
前端·数据库·python·elasticsearch·postgresql
Evan_Lai6 小时前
(一)独热编码、标签编码、目标编码、序数编码详解
python·机器学习
用户7624117567056 小时前
第二章 Python语言基础
python
129Lab6 小时前
BMS 核心算法:SOC 估算从安时积分到 LSTM-UKF 串级融合的 30 年演进(附 Python 实现)
python·算法·lstm·python3.11·bms·soc估算
129Lab6 小时前
电池热管理仿真的AI加速:用Python+PINN物理信息神经网络替代传统CFD的可行性探索
pytorch·python·cfd·pinn·物理信息神经网络·仿真加速·电池热管理
用户298698530146 小时前
Python 中 HTML 转 PDF 的实现方法
python·html·api
答案是你6 小时前
YOLOE 开放词汇检测 + ONNX / TensorRT 推理,开源了!
python·深度学习·yolo·目标检测·计算机视觉·视觉检测
2601_962885726 小时前
AlphaFeed 支持哪些 K 线周期?period参数怎么传?
前端·数据库·python