栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

Python字符串模式(r,b,f,u)详解

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Python字符串模式(r,b,f,u)详解

Python字符串模式 一、环境
  • python版本:3.10
  • 操作系统:windows 10 x64
  • 集成环境:Visual Studio Code (VSC)
二、字符串模式
r模式f模式u模式b模式
r’’f’’u’’b’’
1、r模式

r模式,又称原始字符串模式,意思是将字符串内的转义符视作普通符号。对于Python等大多数编程语言来说,字符串中的反斜杠具有非常特殊的含义。如果你不做特殊的说明,会被程序视做一种标记,程序会对标记后面紧挨着的字符进行特殊的编译。
比如:

>>> para = 'anb'
>>> print(para)  # 你会发现它输出的并非`anb`
a
b
>>> 

被视作了标记,python识别到了这个标记并将后面的n编译成了换行符。这个时候如果想要表示本身的话,就需要进行一个特殊的说明。r模式是实现这种说明的方法之一:

>>> para = r'anb'  # 字符串前加上r表示进入r模式
>>> print(para) 
anb
>>> 
2、f模式

f模式,又称格式化字符串。这个模式下可以把变量以{variable}的形式埋到字符串中。

>>> num = 3                   
>>> a = f'I like number {num}' # 把变量num以{num}的封装形式埋到字符串里
>>> print(a)
I like number 3 # 此时的a就等效于 a = 'I like number 3'
>>> 

当然,这个例子有点无聊。r模式的优势是让字符串变得能像变量一样动起来,领会下面这个Demo:

>>> for num in range(3,7):                      
...     print(f'I like number {str(num)*num}')  # {}里面进行了一次变量的运算:str(num) * num,表示将num重复num次
... 
I like number 333    
I like number 4444   
I like number 55555  
I like number 666666 
>>>
3、u模式

u模式来将字符串的类型显性的标记为utf字符,防止出现系统字符集不同造成的乱码问题。

4、b模式

b模式,将字符串的类型显性的标记为字符集编码。很多网站都会提供编码规则映射表,比如如下网站:

  • 查看字符编码

计算机并不存储字符,而是存储字符对应的编码。现行主流的编码为Unicode字符集下面的utf8,例如学的16进制编码是E5ADA6:

>>> num = b'xE5xADxA6'     # 这里的b''就是显性的告诉python解释器,后面存储的是字符集编码(更本质的叫法是byte对象)
>>> 
>>> print(num.decode('utf8')) # 既然是字符集编码,就可以调用decode方法,进行编码<->文字转换
学
>>> 
  • python 对于16进制的表达方式是x--,所以在python中表达编码E5ADA6需要写成xE5xADxA6的形式。
暑期编程PK赛 得CSDN机械键盘等精美礼品!
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1016130.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号