【学习笔记】32、字符串格式化
字符串格式化
Python中字符串格式化的方法不止一种,每种方式都有它的优缺点,具体使用哪一种,需要取决于具体情况。
一、旧式字符串格式化
Python内置了一个独特的字符串操作:通过“%操作符”可以方便快捷地进行位置格式化。
如果要在单个字符串中进行多次替换,需要对旧式字符串格式化语法加以改动,由于%操作符只能接收一个参数,因此需要将字符串包装到右边的元组中。
二、新式字符串格式化
新式字符串格式化可以免去%操作符这种特殊的语法,并使得字符串格式化的语法更加规整,新式字符串在字符串对象上调用了format()函数。
上例中将int变量格式化为十六进制数字符串的语法也改变了,需要在变量名后面添加“:x”后缀来传递格式规范。
三、字符串字面值插值(Python3.6+)
格式化字符串字面值(formatted string literal),可以在字符串常量内使用嵌入的Python表达式。这种新的格式语法非常强大,由于其中可以嵌入任意的Python表达式,所以甚至能内联算术运算。
本质上格式化字符串字面值是Python解析器的功能,将f字符串转换为一系列字符串常量和表达式,然后合并起来构建最终字符串。
四、模板字符串
模板字符串(template string),需要从Python的内置字符串模块中导入Template类,模板字符串不是核心语言功能,而是由标准库中的模块提供。
模板字符串最佳使用场景是用来处理程序用户生成的格式字符串,因为模板字符串较为简单,所以比较安全。
【总结】
如果格式字符串使用户提供的,使用模板字符串来避免安全问题,如果不是,在考虑Python的版本,Python3.6+就使用字符串字面值插值,其他版本就使用新式字符串格式化。
【学习笔记】32、字符串格式化相关推荐
- Python学习笔记 - 探索字符串格式化
大家好,我是Mr数据杨,今天我们会一起驾驭.format()方法和f-strings这两大神兵利器,让它们在代码中如刘备的双股剑,一分为二,斩断复杂性,让代码如诗如画. 想象一下,诸葛亮要挑选粮草总监 ...
- 1.C#基础学习笔记3---C#字符串(转义符和内存存储无关)
技术qq交流群:JavaDream:251572072 教程下载,在线交流:创梦IT社区:www.credream.com ------------------------------------- ...
- 影像组学视频学习笔记(32)-使用SimpleITK进行N4偏置场校正、Li‘s have a solution and plan.
作者:北欧森林 链接:https://www.jianshu.com/p/ae0f502dc146 来源:简书,已获授权转载 RadiomicsWorld.com "影像组学世界" ...
- Python学习笔记:字符串和编码
前言 最近在学习深度学习,已经跑出了几个模型,但Pyhton的基础不够扎实,因此,开始补习Python了,大家都推荐廖雪峰的课程,因此,开始了学习,但光学有没有用,还要和大家讨论一下,因此,写下这些帖 ...
- Qt学习笔记之 字符串类型小结
1. Qt常用字符串类型 1.1 QString QString是Unicode编码的字符串,存储一系列16位的QChar,每一个QChar对应一个Unicode 4.0编码的字符,详见<Qt学 ...
- Python学习笔记--Python字符串连接方法总结
声明: 这些总结的学习笔记,一部分是自己在工作学习中总结,一部分是收集网络中的知识点总结而成的,但不到原文链接.如果有侵权,请知会,多谢. python中有很多字符串连接方式,总结一下: 1)最原始的 ...
- python笔记5 - 字符串格式化表达式,while语句嵌套,for循环,break,continue,死循环
2017/9/29 字符串格式化表达式,while语句嵌套,for循环,break,continue,死循环 ============================================= ...
- Python基础学习笔记-05字符串、列表、推导式;老师工位随机分配random.shuffle()、算术运算打分例题;
字符串.列表.推导式 python数据类型: #可变数据: 列表List.字典Dictionary.集合Set . #不可变数据:数值Number(int.float.bool.complex).字符 ...
- 【剑指Offer】个人学习笔记_38_字符串的排列
目录 题目: [剑指 Offer 38. 字符串的排列](https://leetcode-cn.com/problems/zi-fu-chuan-de-pai-lie-lcof/) 题目分析 初始解 ...
- 【廖雪峰Python学习笔记】字符串与编码
字符串与编码 三种字符编码 ASCII编码 :计算机由美国人发明,最早只有127个字符编码-- 大小写英文字母.数字和符号 Unicode:把中文.日文.韩文等所有语言统一到一套编码中,2-4byte ...
最新文章
- iOS:ShareSDk的分享
- 115. Leetcode 718. 最长重复子数组 (动态规划-子序列问题)
- 使用post访问不到接口_Postman工具使用说明
- 查看linux服务器信息
- 搭建一个小型教学办公网络
- win7 正在锁定计算机 卡住,win7系统安装卡在正在启动windows界面的解决方法
- Android 版本检测更新
- nginx集群部署,实现负载均衡和nfs共享
- 概率论的学习整理4:全概率公式
- 【交易架构day4】京东到家交易系统的演进之路
- html 注销 按钮,用户登录/注销时隐藏/替换菜单项
- Python函数的应用--汇率转换函数示例(第九章)
- VMware安装优麒麟20.04LTS
- 计算机主板 辐射,一直被忽视!电脑电磁辐射危害及机箱选择
- PostgreSQL死锁了怎么办?
- 有几种检测方法可以检测沼气成分?
- Windows 11首次重大更新!如何快速升级Win11 22H2?(附四种升级方法)
- JavaScript 数据类型的转换
- java发送gmail邮件_如何从R和Gmail发送电子邮件
- 服务器的地址信息,服务器主机地址信息