浅析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 相关文章推荐
Python实现的Kmeans++算法实例
Apr 26 Python
python进阶教程之异常处理
Aug 30 Python
Python简单定义与使用字典dict的方法示例
Jul 25 Python
Python实现的科学计算器功能示例
Aug 04 Python
python 实现一个贴吧图片爬虫的示例
Oct 12 Python
对python3中pathlib库的Path类的使用详解
Oct 14 Python
解决django同步数据库的时候app models表没有成功创建的问题
Aug 09 Python
python实现删除列表中某个元素的3种方法
Jan 15 Python
Python openpyxl模块原理及用法解析
Jan 19 Python
Tensorflow中tf.ConfigProto()的用法详解
Feb 06 Python
Python命令行参数argv和argparse该如何使用
Feb 08 Python
Python中基础数据类型 set集合知识点总结
Aug 02 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
xml+php动态载入与分页
2006/10/09 PHP
PHP图片上传代码
2013/11/04 PHP
Thinkphp和onethink实现微信支付插件
2016/04/13 PHP
php框架CodeIgniter主从数据库配置方法分析
2018/05/25 PHP
如何获取JQUERY AJAX返回的JSON结果集实现代码
2012/12/10 Javascript
jQuery extend 的简单实例
2013/09/18 Javascript
js定时器(执行一次、重复执行)
2014/03/07 Javascript
jQuery实现自动滚动到页面顶端的方法
2015/05/22 Javascript
跟我学习javascript的浮点数精度
2015/11/16 Javascript
jquery制作图片时钟特效
2020/03/30 Javascript
使用jQuery制作遮罩层弹出效果的极简实例分享
2016/05/12 Javascript
再谈javascript注入 黑客必备!
2016/09/14 Javascript
js实现tab选项卡切换功能
2017/01/13 Javascript
谈谈Vue.js——vue-resource全攻略
2017/01/16 Javascript
微信小程序 sha1 实现密码加密实例详解
2017/07/06 Javascript
jQuery实现的简单前端搜索功能示例
2017/10/28 jQuery
nodejs中Express与Koa2对比分析
2018/02/06 NodeJs
JS document对象简单用法完整示例
2020/01/14 Javascript
Python中用format函数格式化字符串的用法
2015/04/08 Python
Python实现返回数组中第i小元素的方法示例
2017/12/04 Python
python中单例常用的几种实现方法总结
2018/10/13 Python
Python3.6+Django2.0以上 xadmin站点的配置和使用教程图解
2019/06/04 Python
Django REST framework 分页的实现代码
2019/06/19 Python
Python列表对象实现原理详解
2019/07/01 Python
Python 在函数上添加包装器
2020/07/28 Python
Opencv python 图片生成视频的方法示例
2020/11/18 Python
五分钟学会怎么用python做一个简单的贪吃蛇
2021/01/12 Python
泰国汽车、火车和轮渡票预订网站:Bus Online Ticket
2017/09/09 全球购物
俄罗斯天然和有机产品、健康生活网上商店:Fitomarket.ru
2020/10/09 全球购物
传播学专业毕业生自荐信
2013/11/04 职场文书
网络优化专员求职信
2014/05/04 职场文书
学校火灾防控方案
2014/06/09 职场文书
自愿离婚协议书范文2014
2014/10/12 职场文书
2014年资料员工作总结
2014/11/18 职场文书
2015年敬老院工作总结
2015/05/18 职场文书
vue+elementUI实现表格列的显示与隐藏
2022/04/13 Vue.js