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 pass 语句使用示例
Mar 11 Python
在Python编程过程中用单元测试法调试代码的介绍
Apr 02 Python
Python正则表达式分组概念与用法详解
Jun 24 Python
Python排序搜索基本算法之希尔排序实例分析
Dec 09 Python
python+selenium识别验证码并登录的示例代码
Dec 21 Python
Python使用统计函数绘制简单图形实例代码
May 15 Python
详解pyppeteer(python版puppeteer)基本使用
Jun 12 Python
FFrpc python客户端lib使用解析
Aug 24 Python
python tkinter组件摆放方式详解
Sep 16 Python
Python 最强编辑器详细使用指南(PyCharm )
Sep 16 Python
如何在python中写hive脚本
Nov 08 Python
Django与数据库交互的实现
Jun 03 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
开源SNS系统-ThinkSNS
2008/05/18 PHP
PHP读取ACCESS数据到MYSQL的代码
2011/05/11 PHP
Linux下实现PHP多进程的方法分享
2012/08/16 PHP
浅谈PHP拦截器之__set()与__get()的理解与使用方法
2016/10/18 PHP
JS 模态对话框和非模态对话框操作技巧汇总
2013/04/15 Javascript
js获取下拉列表框中的value和text的值示例代码
2014/01/11 Javascript
jquery让返回的内容显示在特定div里(代码少而精悍)
2014/06/23 Javascript
基于jQuery滑动杆实现购买日期选择效果
2015/09/15 Javascript
基于jquery实现日历签到功能
2020/09/11 Javascript
从0开始学Vue
2016/10/27 Javascript
利用jquery获取select下拉框的值
2016/11/23 Javascript
ES6中数组array新增方法实例总结
2017/11/07 Javascript
vue2.0+vuex+localStorage代办事项应用实现详解
2018/05/31 Javascript
详解jQuery中的getAll()和cleanData()
2019/04/15 jQuery
通过javascript实现扫雷游戏代码实例
2020/02/09 Javascript
通过实例解析json与jsonp原理及使用方法
2020/09/27 Javascript
vue集成一个支持图片缩放拖拽的富文本编辑器
2021/01/29 Vue.js
python3模拟百度登录并实现百度贴吧签到示例分享(百度贴吧自动签到)
2014/02/24 Python
跟老齐学Python之私有函数和专有方法
2014/10/24 Python
使用Python的Bottle框架写一个简单的服务接口的示例
2015/08/25 Python
Python中Django发送带图片和附件的邮件
2017/03/31 Python
numpy.transpose对三维数组的转置方法
2018/04/17 Python
Flask框架信号用法实例分析
2018/07/24 Python
Python中@property的理解和使用示例
2019/06/11 Python
django获取from表单multiple-select的value和id的方法
2019/07/19 Python
python正则过滤字母、中文、数字及特殊字符方法详解
2020/02/11 Python
pandas中的ExcelWriter和ExcelFile的实现方法
2020/04/24 Python
Speedo速比涛法国官方网站:泳衣、泳镜、泳帽、泳裤
2019/07/30 全球购物
会计学专业学生的求职信范文
2014/01/27 职场文书
社团文化节策划书
2014/02/01 职场文书
高校教师自荐信范文
2014/03/13 职场文书
学生个人评语大全
2015/01/04 职场文书
会计工作岗位职责
2015/02/03 职场文书
幼儿园百日安全活动总结
2015/05/07 职场文书
mysql聚集索引、辅助索引、覆盖索引、联合索引的使用
2022/02/12 MySQL
深入理解go缓存库freecache的使用
2022/02/15 Golang