python字符串格式化方式解析


Posted in Python onOctober 19, 2019

1.%格式符

name = '李四'
age = 18
a = "姓名:%s,年龄:%s"%(name,age)
print(a)   #姓名:李四,年龄:18
​
b = "%(name)s,%(age)s"%{'name':'张三','age':18}
print(b)   #张三,18

这种格式化并不是很好,因为它很冗长并且容易导致错误,比如没有正确显示元组或字典

2.str.format()

name = '李四'
age = 18
# 替换字段用大括号进行标记
a1 = "hello, {}. you are {}?".format(name,age)
print(a1)   #hello, 李四. you are 18?
​
# 通过索引来以其他顺序引用变量
a2 = "hello, {1}. you are {0}?".format(age,name)
print(a2)  #hello, 李四. you are 18?
​
# 通过参数来以其他顺序引用变量
a3 = "hello, {name}. you are {age1}?".format(age1=age,name=name)
print(a3)  #hello, 李四. you are 18?
​
# 从字典中读取数据时还可以使用 **
data = {"name":"张三","age":18}
a4 = "hello, {name}. you are {age}?".format(**data)
print(a4)  #hello, 李四. you are 18?

在处理多个参数和更长的字符串时仍然可能非常冗长

3.f-Strings

f-strings 是指以 f 或 F 开头的字符串,其中以 {} 包含的表达式会进行值替换。

name = '李四'
age = 18
# F 和 f 的简单使用
b1 = f"hello, {name}. you are {age}?"
b2 = F"hello, {name}. you are {age}?"
print(b1)   # hello, 李四. you are 18?
print(b2)   # hello, 李四. you are 18?

# 字典也可以
teacher = {'name': 'meet', 'age': 18}
msg = f"The teacher is {teacher['name']}, aged {teacher['age']}"
print(msg) # The comedian is meet, aged 18

# 列表也行
l1 = ['meet', 18]
msg = f'姓名:{l1[0]},年龄:{l1[1]}.'
print(msg) # 姓名:meet,年龄:18.

#可以插入表达式
def sum_a_b(a,b):
  return a + b
a = 1
b = 2
print('求和的结果为' + f'{sum_a_b(a,b)}')

#多行f 反斜杠
name = 'barry'
age = 18
ajd = 'handsome'

speaker = f'Hi {name}.'\
     f'You are {age} years old.'\
     f'You are a {ajd} guy!'
print(speaker)  #Hi barry.You are 18 years old.You are a handsome guy!
print(f"{You are very \"handsome\"}")   #报错


#括号的处理 -->重点:两对为一组
print(f"{{73}}") # {73}
print(f"{{{73}}}") # {73}
print(f"{{{{73}}}}") # {{73}}


m = 21
# ! , : { } ;这些标点不能出现在{} 这里面。
# print(f'{;12}') # 报错
# 所以使用lambda 表达式会出现一些问题。
# 解决方式:可将lambda嵌套在圆括号里面解决此问题。
x = 5
print(f'{(lambda x: x*2) (x)}') # 10

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python字符串匹配算法KMP实例
Jul 18 Python
Python中最大最小赋值小技巧(分享)
Dec 23 Python
python用plt画图时,cmp设置方法
Dec 13 Python
PyTorch搭建多项式回归模型(三)
May 22 Python
把JSON数据格式转换为Python的类对象方法详解(两种方法)
Jun 04 Python
Django Form 实时从数据库中获取数据的操作方法
Jul 25 Python
pytorch numpy list类型之间的相互转换实例
Aug 18 Python
pandas数据处理进阶详解
Oct 11 Python
详解PyQt5信号与槽的几种高级玩法
Mar 24 Python
python opencv把一张图片嵌入(叠加)到另一张图片上的实现代码
Jun 11 Python
python datetime时间格式的相互转换问题
Jun 11 Python
Python如何实现后端自定义认证并实现多条件登陆
Jun 22 Python
基于python3监控服务器状态进行邮件报警
Oct 19 #Python
使用python绘制温度变化雷达图
Oct 18 #Python
详解numpy矩阵的创建与数据类型
Oct 18 #Python
Python 3.6打包成EXE可执行程序的实现
Oct 18 #Python
详解pyinstaller selenium python3 chrome打包问题
Oct 18 #Python
python如何将两个txt文件内容合并
Oct 18 #Python
Python Django框架url反向解析实现动态生成对应的url链接示例
Oct 18 #Python
You might like
PHP与SQL注入攻击[二]
2007/04/17 PHP
ThinkPHP之A方法实例讲解
2014/06/20 PHP
20个2014年最优秀的PHP框架回顾
2014/10/22 PHP
yii去掉必填项中星号的方法
2015/12/28 PHP
老生常谈PHP面向对象之解释器模式
2017/05/17 PHP
PHP完全二叉树定义与实现方法示例
2017/10/09 PHP
TP5(thinkPHP5)框架基于ajax与后台数据交互操作简单示例
2018/09/03 PHP
jquery实现的一个导航滚动效果具体代码
2013/05/27 Javascript
jquery cookie的用法总结
2013/11/18 Javascript
JavaScript按位运算符的应用简析
2014/02/04 Javascript
使用jquery组件qrcode生成二维码及应用指南
2015/02/22 Javascript
JavaScript如何实现对数字保留两位小数一位自动补零
2015/12/18 Javascript
1秒50万字!js实现关键词匹配
2016/08/01 Javascript
js 将图片连接转换成base64格式的简单实例
2016/08/10 Javascript
基于vuejs+webpack的日期选择插件
2020/05/21 Javascript
浅谈Angular.js中使用$watch监听模型变化
2017/01/10 Javascript
jQuery插件jquery.kxbdmarquee.js实现无缝滚动效果
2017/02/15 Javascript
js定时器+简单的动画效果实例
2017/11/10 Javascript
three.js中文文档学习之通过模块导入
2017/11/20 Javascript
用Node编写RESTful API接口的示例代码
2018/07/04 Javascript
微信小程序动画(Animation)的实现及执行步骤
2018/10/28 Javascript
如何在JavaScript中等分数组的实现
2020/12/13 Javascript
python读写文件write和flush的实现方式
2020/02/21 Python
Django Session和Cookie分别实现记住用户登录状态操作
2020/07/02 Python
Pandas的Apply函数具体使用
2020/07/21 Python
意大利香水和化妆品购物网站:Parfimo.it
2019/10/06 全球购物
德国、奥地利和瑞士最大的旅行和度假门户网站:HolidayCheck
2019/11/14 全球购物
飞利浦美国官网:Philips美国
2020/02/28 全球购物
不开辟用于交换数据的临时空间,如何完成字符串的逆序
2012/12/02 面试题
报告会主持词
2014/04/02 职场文书
欢度春节标语
2014/07/01 职场文书
秋收起义观后感
2015/06/11 职场文书
心得体会格式及范文
2016/01/25 职场文书
优秀共产党员事迹材料2016
2016/02/29 职场文书
旅游安全责任协议书
2016/03/22 职场文书
如何通过一篇文章了解Python中的生成器
2022/04/02 Python