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 (2)
Oct 31 Python
一个检测OpenSSL心脏出血漏洞的Python脚本分享
Apr 10 Python
Python生成随机密码
Mar 10 Python
Python cookbook(数据结构与算法)筛选及提取序列中元素的方法
Mar 19 Python
python 反向输出字符串的方法
Jul 16 Python
python使用magic模块进行文件类型识别方法
Dec 08 Python
使用Python实现跳一跳自动跳跃功能
Jul 10 Python
Python如何用filter函数筛选数据
Mar 05 Python
浅谈TensorFlow中读取图像数据的三种方式
Jun 30 Python
利用Python发送邮件或发带附件的邮件
Nov 12 Python
Python+MySQL随机试卷及答案生成程序的示例代码
Feb 01 Python
用Python编写简单的gRPC服务的详细过程
Jul 04 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 高级课程笔记 面向对象
2009/06/21 PHP
php中处理mysql_fetch_assoc返回来的数组 不用foreach----echo
2011/05/04 PHP
PHP下判断网址是否有效的代码
2011/10/08 PHP
php批量删除数据库下指定前缀的表以prefix_为例
2014/08/24 PHP
怎样搭建PHP开发环境
2015/07/28 PHP
nodejs 后缀名判断限制代码
2011/03/31 NodeJs
js加入收藏以及使用Jquery更改透明度
2014/01/26 Javascript
javascript中的undefined和not defined区别示例介绍
2014/02/26 Javascript
JavaScript的null和undefined区别示例介绍
2014/09/15 Javascript
JavaScript框架是什么?怎样才能叫做框架?
2015/07/01 Javascript
Bootstrap入门书籍之(一)排版
2016/02/17 Javascript
用jQuery向div中添加Html文本内容的简单实现
2016/07/13 Javascript
javascript实现鼠标点击页面 移动DIV
2016/12/02 Javascript
解决URL地址中的中文乱码问题的办法
2017/02/10 Javascript
限时抢购-倒计时的完整实例(分享)
2017/09/17 Javascript
解决VUE中document.body.scrollTop为0的问题
2018/09/15 Javascript
bootstrap table实现合并单元格效果
2018/12/24 Javascript
微信小程序实现九宫格抽奖
2020/04/15 Javascript
详解微信小程序缓存--缓存时效性
2019/05/02 Javascript
Python记录详细调用堆栈日志的方法
2015/05/05 Python
python中list列表的高级函数
2016/05/17 Python
解决Django连接db遇到的问题
2019/08/29 Python
python爬虫 猫眼电影和电影天堂数据csv和mysql存储过程解析
2019/09/05 Python
python tkinter实现连连看游戏
2020/11/16 Python
详解canvas在圆弧周围绘制文本的两种写法
2018/05/22 HTML / CSS
美国皮靴公司自1863年:The Frye Company
2016/11/30 全球购物
FragranceNet中文网:北美健康美容线上零售商
2020/08/26 全球购物
机械设计毕业生自荐信
2014/02/02 职场文书
劲霸男装广告词
2014/03/21 职场文书
教师评语大全
2014/04/28 职场文书
小班幼儿评语大全
2014/04/30 职场文书
2014基建处领导班子“四风”对照检查材料思想汇报
2014/10/04 职场文书
走群众路线学习心得体会
2014/10/31 职场文书
教师节老师寄语
2015/05/28 职场文书
MySQL如何使备份得数据保持一致
2022/05/02 MySQL
搭建zabbix监控以及邮件报警的超级详细教学
2022/07/15 Servers