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

相关推荐
tudficdew5 分钟前
实战:用Python分析某电商销售数据
jvm·数据库·python
sjjhd65227 分钟前
Python日志记录(Logging)最佳实践
jvm·数据库·python
2301_821369611 小时前
用Python生成艺术:分形与算法绘图
jvm·数据库·python
机 _ 长1 小时前
YOLO26 改进 | 基于特征蒸馏 | 知识蒸馏 (Response & Feature-based Distillation)
python·深度学习·机器学习
2401_832131952 小时前
Python单元测试(unittest)实战指南
jvm·数据库·python
vx_BS813302 小时前
【直接可用源码免费送】计算机毕业设计精选项目03574基于Python的网上商城管理系统设计与实现:Java/PHP/Python/C#小程序、单片机、成品+文档源码支持定制
java·python·课程设计
gzxx2007sddx3 小时前
windows vnpy运行过程及问题记录
python·量化·vnpy
算法_小学生3 小时前
LeetCode 热题 100(分享最简单易懂的Python代码!)
python·算法·leetcode
230万光年的思念3 小时前
【无标题】
python
shengli7223 小时前
机器学习与人工智能
jvm·数据库·python