浅析python字符串前加r、f、u、l 的区别


Posted in Python onJanuary 24, 2021

先给大家介绍下Python 字符串前面加u,r,b,f的含义(字符串前缀)

1、字符串前加 u

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

作用:

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

2、字符串前加 r

例:r"\n\n\n\n”

# 表示一个普通生字符串 \n\n\n\n,而不表示换行了。

作用:

去掉反斜杠的转移机制。

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

应用:

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

3、字符串前加 b

例: response = b'<h1>Hello World!</h1>'     # b' ' 表示这是一个 bytes 对象

作用:

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

用处:

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

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

附:

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

str.encode('utf-8')
bytes.decode('utf-8')

4、字符串前加 f

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

下面介绍下python字符串前加r、f、u、l 的区别

f-strings 是指以 f 或 F 开头的字符串,其中以 {} 包含的表达式会进行值替换。(目前支持python3.6版本)

下面看下 f-strings 的使用方法

基本使用(作用:替换值)

>>>name = 'xiaoming'
>>> age = 18
>>> f"hi, {name}, are you {age}"
#结果如下
'hi, xiaoming, are you 18'
>>> F"hi, {name}, are you {age}"
'hi, xiaoming, are you 18'

在字符串前加r可防止字符串转义

作用:没有转义特殊或不能打印的字符。

>>> s='abc\nabc'
>>> s
'abc\nabc'
>>> print s
abc
abc
>>> s=r'abc\nabc'
>>> s
'abc\\nabc'
>>> print s
abc\nabc

u/U:表示unicode字符串

不是仅仅是针对中文, 可以针对任何的字符串,代表是对字符串进行unicode编码。
一般英文字符在使用各种编码下, 基本都可以正常解析, 所以一般不带u;但是中文, 必须表明所需编码, 否则一旦编码转换就会出现乱码。 建议所有编码方式采用utf8

字符串前加 “l”

表示宽字符,unicode字符( unicode字符集是两个字节组成的。L告示编译器使用两个字节的 unicode 字符集) 如 L"我的字符串" 表示将ANSI字符串转换成unicode的字符串,就是每个字符占用两个字节。

不加时占用字节
strlen("asd") = 3; 
 
 加之后占用字节
strlen(L"asd") = 6;

到此这篇关于浅析python字符串前加r、f、u、l 的区别的文章就介绍到这了,更多相关python字符串r、f、u、l内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
django项目运行因中文而乱码报错的几种情况解决
Nov 07 Python
python如何查看微信消息撤回
Nov 27 Python
浅谈pycharm的xmx和xms设置方法
Dec 03 Python
python opencv读mp4视频的实例
Dec 07 Python
分享8个非常流行的 Python 可视化工具包
Jun 05 Python
python 中值滤波,椒盐去噪,图片增强实例
Dec 18 Python
Python3.9又更新了:dict内置新功能
Feb 28 Python
python实现Pyecharts实现动态地图(Map、Geo)
Mar 25 Python
Python logging模块写入中文出现乱码
May 21 Python
Python中免验证跳转到内容页的实例代码
Oct 23 Python
pycharm中选中一个单词替换所有重复单词的实现方法
Nov 17 Python
如何基于Python pygame实现动画跑马灯
Nov 18 Python
python 图像增强算法实现详解
Jan 24 #Python
详解用 python-docx 创建浮动图片
Jan 24 #Python
Python爬虫入门教程02之笔趣阁小说爬取
Jan 24 #Python
Python爬虫入门教程01之爬取豆瓣Top电影
Jan 24 #Python
详解python的变量缓存机制
Jan 24 #Python
Python字符串对齐、删除字符串不需要的内容以及格式化打印字符
Jan 23 #Python
利用Python函数实现一个万历表完整示例
Jan 23 #Python
You might like
索尼SONY SRF-S83/84电路分析和打磨
2021/03/02 无线电
PHP中error_reporting()函数的用法(修改PHP屏蔽错误)
2011/07/01 PHP
轻松掌握php设计模式之访问者模式
2016/09/23 PHP
Laravel框架验证码类用法实例分析
2019/09/11 PHP
php自动加载代码实例详解
2021/02/26 PHP
比较详细的关于javascript中void(0)的具体含义解释
2007/08/02 Javascript
Mootools 1.2教程 设置和获取样式表属性
2009/09/15 Javascript
网页防止tab键的使用快速解决方法
2013/11/07 Javascript
gameboy网页闯关游戏(riddle webgame)--仿微信聊天的前端页面设计和难点
2016/02/21 Javascript
Webpack+Vue如何导入Jquery和Jquery的第三方插件
2017/02/20 Javascript
提高Web性能的前端优化技巧总结
2017/02/27 Javascript
js清除浏览器缓存的几种方法
2017/03/15 Javascript
利用JS判断客户端类型你应该知道的四种方法
2017/12/22 Javascript
node+koa2+mysql+bootstrap搭建一个前端论坛
2018/05/06 Javascript
vue实现的组件兄弟间通信功能示例
2018/12/04 Javascript
Python中声明只包含一个元素的元组数据方法
2014/08/25 Python
Python人脸识别初探
2017/12/21 Python
Python打印输出数组中全部元素
2018/03/13 Python
python-opencv 将连续图片写成视频格式的方法
2019/01/08 Python
Python shelve模块实现解析
2019/08/28 Python
通过实例解析python创建进程常用方法
2020/06/19 Python
程序设计HTML5 Canvas API
2013/04/08 HTML / CSS
米兰网婚纱礼服法国网上商店:Milanoo法国
2016/08/20 全球购物
美国东北部户外服装和设备零售商:Eastern Mountain Sports
2016/10/05 全球购物
中国高端鲜花第一品牌:roseonly(一生只送一人)
2017/02/12 全球购物
美国最大和最受信任的二手轮胎商店:Bestusedtires.com
2020/06/02 全球购物
介绍一下#error预处理
2015/09/25 面试题
行政人员岗位职责
2013/12/08 职场文书
广告学专业求职信
2014/06/19 职场文书
实验室的标语
2014/06/20 职场文书
学习实践科学发展观心得体会
2014/09/10 职场文书
基层干部群众路线教育实践活动个人对照检查材料
2014/09/23 职场文书
长城英文导游词
2015/01/30 职场文书
销售人员管理制度
2015/08/06 职场文书
Redis数据结构之链表与字典的使用
2021/05/11 Redis
Android自定义双向滑动控件
2022/04/19 Java/Android