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中数据解析
May 05 Python
深入解析Python中的集合类型操作符
Aug 19 Python
Python定时任务sched模块用法示例
Jul 16 Python
在SQLite-Python中实现返回、查询中文字段的方法
Jul 17 Python
Python使用mongodb保存爬取豆瓣电影的数据过程解析
Aug 14 Python
python安装virtualenv虚拟环境步骤图文详解
Sep 18 Python
基于python3的socket聊天编程
Feb 17 Python
Python列表倒序输出及其效率详解
Mar 04 Python
Python如何操作docker redis过程解析
Aug 10 Python
详解python 支持向量机(SVM)算法
Sep 18 Python
查找适用于matplotlib的中文字体名称与实际文件名对应关系的方法
Jan 05 Python
python爬取豆瓣电影TOP250数据
May 23 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&mysql(四)
2006/10/09 PHP
php7 安装yar 生成docker镜像
2017/05/09 PHP
Laravel 加载第三方类库的方法
2018/04/20 PHP
JavaScript静态的动态
2006/09/18 Javascript
解放web程序员的输入验证
2006/10/06 Javascript
jQuery 常见操作实现方式和常用函数方法总结
2011/05/06 Javascript
Javascript实现带关闭按钮的网页漂浮广告代码
2014/01/12 Javascript
使用jQuery实现input数值增量和减量的方法
2015/01/24 Javascript
Jquery实现select multiple左右添加和删除功能的简单实例
2016/05/26 Javascript
几种tab切换详解
2017/02/03 Javascript
简单谈谈JS中的正则表达式
2017/09/11 Javascript
vue中子组件向父组件传递数据的实例代码(实现加减功能)
2018/04/20 Javascript
vue 点击按钮实现动态挂载子组件的方法
2018/09/07 Javascript
vue+element 模态框表格形式的可编辑表单实现
2019/06/07 Javascript
JS/jQuery实现超简单的Table表格添加,删除行功能示例
2019/07/31 jQuery
微信小程序实现搜索功能
2020/03/10 Javascript
python操作MySQL数据库具体方法
2013/10/28 Python
Python多进程并发(multiprocessing)用法实例详解
2015/06/02 Python
搞笑的程序猿:看看你是哪种Python程序员
2015/06/12 Python
Python tkinter模块弹出窗口及传值回到主窗口操作详解
2017/07/28 Python
Python3中bytes类型转换为str类型
2018/09/27 Python
对python中url参数编码与解码的实例详解
2019/07/25 Python
Python实现列表中非负数保留,负数转化为指定的数值方式
2020/06/04 Python
超级英雄、电影和电视、乐队和音乐T恤:Loud Clothing
2019/09/01 全球购物
CheapTickets泰国:廉价航班,查看促销价格并预订机票
2019/12/28 全球购物
Yahoo-PHP面试题1
2016/07/20 面试题
应届生法律顾问求职信
2013/11/19 职场文书
党的群众路线教育实践活动心得体会900字
2014/03/07 职场文书
五一活动标语
2014/06/30 职场文书
国家税务局干部作风整顿整改措施
2014/09/18 职场文书
工作作风懒散检讨书
2014/10/29 职场文书
先进工作者事迹材料
2014/12/23 职场文书
2015年酒店工作总结范文
2015/04/07 职场文书
2016中秋节月饼促销广告语
2016/01/28 职场文书
2016年教师党员承诺书范文
2016/03/24 职场文书
Python 的演示平台支持 WSGI 接口的应用
2022/04/20 Python