Python持续更新的新特性
一. python 3.6 更新的新特性
1.1 f-Strings:格式化输出
好消息是,F字符串在这里可以节省很多的时间。他们确实使格式化更容易。他们自Python 3.6开始加入标准库。您可以在PEP 498中阅读所有内容。
也称为“格式化字符串文字”,F字符串是开头有一个f的字符串文字,以及包含表达式的大括号将被其值替换。表达式在运行时进行渲染,然后使用__format__
协议进行格式化。与往常一样,Python文档是您想要了解更多信息的最佳读物。
以下是f-strings可以让你的生活更轻松的一些方法。
1. 简单举例
name = '太白金星' age = 18 sex = '男' msg = F'姓名:{name},性别:{age},年龄:{sex}' # 大写字母也可以msg = f'姓名:{name},性别:{age},年龄:{sex}' print(msg)
''' 输出结果: 姓名:太白金星,性别:18,年龄:男 '''
2. 任意表达式
print(f'{3*21}') # 63 name = 'barry' print(f"全部大写:{name.upper()}") # 全部大写:BARRY# 字典也可以 teacher = {'name': '太白金星', 'age': 18} msg = f"The teacher is {teacher['name']}, aged {teacher['age']}" print(msg) # The comedian is 太白金星, aged 18# 列表也行 l1 = ['太白金星', 18] msg = f'姓名:{l1[0]},年龄:{l1[1]}.' print(msg) # 姓名:太白金星,年龄:18.
View Code
3. 可以插入表达式
def sum_a_b(a,b):return a + b a = 1 b = 2 print('求和的结果为' + f'{sum_a_b(a,b)}')
View Code
4.多行f
name = 'barry' age = 18 ajd = 'handsome'# speaker = f'''Hi {name}. # You are {age} years old. # You are a {ajd} guy!''' speaker = f'Hi {name}.'\f'You are {age} years old.'\f'You are a {ajd} guy!' print(speaker)
View Code
5.其他细节
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
View Code
总结:
f-string的格式化输出更加简洁,方便,易读。而且他的处理速度对之前的%s 或者format 有了较高的提升,所以以后尽量使用此种格式化输出。
参考文献:https://mlln.cn/2018/05/19/python3%20f-string%E6%A0%BC%E5%BC%8F%E5%8C%96%E5%AD%97%E7%AC%A6%E4%B8%B2%E7%9A%84%E9%AB%98%E7%BA%A7%E7%94%A8%E6%B3%95/
转载于:https://www.cnblogs.com/jin-xin/articles/10478209.html
Python持续更新的新特性相关推荐
- 火了!16岁高中生做的 Python 3.9 八大新特性图
金磊 发自 凹非寺 量子位 报道 | 公众号 QbitAI Python3.9,「千呼万唤始出来」. 先来速看下此次发布版本的重点. 新语法特性: PEP 584,为 dict 增加合并运算符. PE ...
- word python api_Word自动化(C# + Python)(持续更新中...)
目录 前言 读取Word内容 NPOINPOI安装 NPOI提取Word内容 用Costura.Fody打包DLL python-docx 读取PDF内容 python-docx自动生成Word 全局 ...
- Python 3.6部分新特性
Python 3.6.0于2016年12月23日正式发布,除了本文提到的这一部分比较重要的新特性之外,还有很多标准库也新增了部分功能,等有时间再慢慢整理. 1.内置字典对象dict进行了重新设计,可以 ...
- 【鸿蒙学院】鸿蒙(HarmonyOS)IDE迎来重大更新,新特性足以让你尖叫!
目录 1. 双向预览功能 2.Java UI 数据模拟 3. 新增的测试框架 鸿蒙(HarmonyOS)最新版的IDE Beta3于2021-03-31日发布,beta3增加了很多吸引人的功能,这些功 ...
- python 3.10 的新特性用不到,你来打我!!!
文 | 某某白米饭 来源:Python 技术「ID: pythonall」 python 3.10 已经在 10月 4 号发布了,这次更新了错误语法提示对 python 新手更加友好.好几个新的特性非 ...
- Java 16 新特性:record类
以前我们定义类都是用class关键词,但从Java 16开始,我们将多一个关键词record,它也可以用来定义类.record关键词的引入,主要是为了提供一种更为简洁.紧凑的final类的定义方式. ...
- Java 17 新特性:密封类
Java 17推出的新特性Sealed Classes经历了2个Preview版本(JDK 15中的JEP 360.JDK 16中的JEP 397),最终定稿于JDK 17中的JEP 409.Seal ...
- Python 3.9来了!这十个新特性值得关注
选自towardsdatascience 作者:Farhad Malik 机器之心编译 编辑:陈萍 近日,Python 3.9 发布,并开发了一些新特性,包括字典合并与更新.新的解析器.新的字符串函数 ...
- 您应该知道Python 3.10中的新特性!
Hello,大家好,我是Alex,欢迎来到每周博客! 这篇博客来给大家介绍一下Python 3.10的新特性. Python 3.10版本带来了一些很棒的新功能和改进. 结构模式匹配 结构模式匹配可以 ...
最新文章
- .net获取ip地址
- 通过反射来创建对象?getConstructor()和getDeclaredConstructor()区别?
- List集合的迭代器方法
- SVM学习笔记1-问题定义
- Dynpro程序抬头信息要求多值输入的解决方法
- python中while与else的联姻
- Autofs实现文件系统的自动mount
- web安全day13:简单深透测试流程
- c++学习书籍推荐及理由
- 适合产品经理不同阶段的书籍和课程
- 从B树谈到R树之B树的c实现
- MSD3393/MSD3463 屏参及REG对照表
- 批量修改文件内容(Python版)
- 【无标题】人工智能的定义
- vivo Z1i的usb调试模式在哪里,打开vivo Z1iusb调试模式的流程
- 最安全的邮箱-Gmail
- 《Elixir In Action》第一章--第五章笔记
- 汉诺塔小游戏 c语言
- ADI Blackfin DSP处理器-BF533的开发详解67:PCM的播放(含源码)
- 本周AI热点回顾:GPT-3开始探索付费使用;这个视频「橡皮擦」让你瞬间消失;英伟达最强消费级显卡RTX 3090出炉