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冒泡排序简单实现方法
Jul 09 Python
python中将\\uxxxx转换为Unicode字符串的方法
Sep 06 Python
在python中实现对list求和及求积
Nov 14 Python
python 2.7 检测一个网页是否能正常访问的方法
Dec 26 Python
Django 用户认证组件使用详解
Jul 23 Python
python将print输出的信息保留到日志文件中
Sep 27 Python
浅谈Python3识别判断图片主要颜色并和颜色库进行对比的方法
Oct 25 Python
django中url映射规则和服务端响应顺序的实现
Apr 02 Python
python实现二分类和多分类的ROC曲线教程
Jun 15 Python
Python pip 常用命令汇总
Oct 19 Python
python 多进程和协程配合使用写入数据
Oct 30 Python
用python对oracle进行简单性能测试
Dec 05 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程序
2006/10/09 PHP
PHP中使用asort进行中文排序失效的问题处理
2014/08/18 PHP
PHP实现根据时间戳获取周几的方法
2016/02/26 PHP
PHP模板引擎Smarty自定义变量调解器用法
2016/04/11 PHP
php文件上传后端处理小技巧
2016/05/22 PHP
菜单效果
2006/10/14 Javascript
js cookies实现简单统计访问次数
2009/11/24 Javascript
利用jQuery插件扩展识别浏览器内核与外壳的类型和版本的实现代码
2011/10/22 Javascript
document.createElement()用法及注意事项(ff下不兼容)
2013/03/13 Javascript
javaScript函数中执行C#代码中的函数方法总结
2013/08/07 Javascript
获取表单控件原始(初始)值的方法
2013/08/21 Javascript
文档对象模型DOM通俗讲解
2013/11/01 Javascript
Angular中的Promise对象($q介绍)
2015/03/03 Javascript
实例剖析AngularJS框架中数据的双向绑定运用
2016/03/04 Javascript
JavaScript触发onScroll事件的函数节流详解
2016/12/14 Javascript
微信小程序收藏功能的实现代码
2018/06/12 Javascript
JavaScript中的垃圾回收与内存泄漏示例详解
2019/05/02 Javascript
VUE渲染后端返回含有script标签的html字符串示例
2019/10/28 Javascript
Python正则表达式教程之二:捕获篇
2017/03/02 Python
python实现石头剪刀布程序
2021/01/20 Python
TensorFlow实现批量归一化操作的示例
2020/04/22 Python
基于Python爬取素材网站音频文件
2020/10/21 Python
python 如何对logging日志封装
2020/12/02 Python
英国玛莎百货澳大利亚:Marks & Spencer Australia
2019/08/30 全球购物
酒店服务实习自我鉴定
2013/09/22 职场文书
银行实习鉴定
2013/12/13 职场文书
老总助理工作岗位职责
2014/02/06 职场文书
2014乡镇“三八”国际劳动妇女节活动总结
2014/03/01 职场文书
领导接待方案
2014/03/13 职场文书
运动会的口号
2014/06/09 职场文书
幼儿园安全生产月活动总结
2014/07/05 职场文书
小学国庆节活动方案策划书
2014/09/16 职场文书
办护照工作证明
2014/10/01 职场文书
公司员工手册范本
2015/05/14 职场文书
MySQL表类型 存储引擎 的选择
2021/11/11 MySQL
Go语言grpc和protobuf
2022/04/13 Golang