网站首页 > 技术文章 正文
Python 3.6
Python 3.6 发布于2016年12月23日。
格式化的字符串文字fstring
格式化字符串字面值带有 'f' 前缀并且类似于 str.format() 所接受的格式字符串。 其中包含由花括号包围的替换字段。 替换字段属于表达式,它们会在运行时被求值,然后使用 format() 协议进行格式化:
>>> name = "Fred"
>>> f"He said his name is {name}."
'He said his name is Fred.'
>>> width = 10
>>> precision = 4
>>> value = decimal.Decimal("12.34567")
>>> f"result: {value:{width}.{precision}}" # nested fields
'result: 12.35'
数字文字中的下划线
增加了在数字字面值中使用下划线的能力以改善可读性。 例如:
>>> 1_000_000_000_000_000
1000000000000000
>>> 0x_FF_FF_FF_FF
4294967295
Python 3.7
Python 3.7 于 2018 年 6 月 27 日发布。
Python 3.8
Python 3.8已于2019年10月14日发布。
赋值表达式
新增的语法 := 可在表达式内部为变量赋值。 它被昵称为“海象运算符”因为它很像是海象的眼睛和长牙。
if (n := len(a)) > 10:
print(f"List is too long ({n} elements, expected <= 10)")
仅限位置形参
在下面的例子中,形参 a 和 b 为仅限位置形参,c 或 d 可以是位置形参或关键字形参,而 e 或 f 要求为关键字形参:
def f(a, b, /, c, d, *, e, f):
print(a, b, c, d, e, f)
f-字符串支持 = 用于自动记录表达式和调试文档
增加 = 说明符用于 f-string。 形式为 f'{expr=}' 的 f-字符串将扩展表示为表达式文本,加一个等于号,再加表达式的求值结果。
Python 3.9
Python 3.9 发布于 2020 年 10 月 5 日。
字典合并与更新运算符 | |=
>>> x = {"key1": "value1 from x", "key2": "value2 from x"}
>>> y = {"key2": "value2 from y", "key3": "value3 from y"}
>>> x | y
{'key1': 'value1 from x', 'key2': 'value2 from y', 'key3': 'value3 from y'}
>>> y | x
{'key2': 'value2 from x', 'key3': 'value3 from y', 'key1': 'value1 from x'}
新增用于移除前缀和后缀的字符串方法
str.removeprefix(prefix)
str.removesuffix(suffix)
用于方便地从字符串移除不需要的前缀或后缀。
新增模块
zoneinfo
zoneinfo 模块为标准库引入了 IANA 时区数据库。 它添加了 zoneinfo.ZoneInfo,这是一个基于系统时区数据的实体 datetime.tzinfo 实现。
graphlib
添加了新的 graphlib 模块,其中包含 graphlib.TopologicalSorter 类来提供图的拓扑排序功能。 (由 Pablo Galindo, Tim Peters 和 Larry Hastings 在 bpo-17005 中贡献。)
Python 3.10
Python 3.10 发布于 2021 年 10 月 14 日
结构化模式匹配match
增加了采用模式加上相应动作的 match 语句 和 case 语句 的形式的结构化模式匹配。 模式由序列、映射、基本数据类型以及类实例构成。 模式匹配使得程序能够从复杂的数据类型中提取信息、根据数据结构实现分支,并基于不同的数据形式应用特定的动作。
def http_error(status):
match status:
case 400:
return "Bad request"
case 401 | 402 |403:
return "Not allowed"
case 404:
return "Not found"
case _:
return "Something's wrong with the internet"
猜你喜欢
- 2024-12-17 Python 中双冒号“::”是什么运算符,有什么功能
- 2024-12-17 一文了解 Python 中的新功能:match-case 多分支选择语句
- 2024-12-17 Python中实现线程和多线程开发以及线程安全功能示例
- 2024-12-17 用Python实现Wake On Lan远程开机功能
- 2024-12-17 python pillow图像处理功能及应用
- 2024-12-17 Python range() 函数的功能增强版 arange()、linspace()
- 2024-12-17 python每天学习一点点(模拟10086查询功能简易版)
- 2024-12-17 Python 3.13 中5 个新增的功能将改变您的编码方式
- 2024-12-17 用python实现图像查找功能
- 2024-12-17 利用python实现彩票大乐透机器选号功能
- 05-25Python 3.14 t-string 要来了,它与 f-string 有何不同?
- 05-25Python基础元素语法总结
- 05-25Python中的变量是什么东西?
- 05-25新手常见的python报错及解决方案
- 05-2511-Python变量
- 05-2510个每个人都是需要知道Python问题
- 05-25Python编程:轻松掌握函数定义、类型及其参数传递方式
- 05-25Python基础语法
- 257℃Python短文,Python中的嵌套条件语句(六)
- 257℃python笔记:for循环嵌套。end=""的作用,图形打印
- 256℃PythonNet:实现Python与.Net代码相互调用!
- 251℃Python操作Sqlserver数据库(多库同时异步执行:增删改查)
- 251℃Python实现字符串小写转大写并写入文件
- 106℃原来2025是完美的平方年,一起探索六种平方的算吧
- 91℃Python 和 JavaScript 终于联姻了!PythonMonkey 要火?
- 81℃Ollama v0.4.5-v0.4.7 更新集合:Ollama Python 库改进、新模型支持
- 最近发表
- 标签列表
-
- python中类 (31)
- python 迭代 (34)
- python 小写 (35)
- python怎么输出 (33)
- python 日志 (35)
- python语音 (31)
- python 工程师 (34)
- python3 安装 (31)
- python音乐 (31)
- 安卓 python (32)
- python 小游戏 (32)
- python 安卓 (31)
- python聚类 (34)
- python向量 (31)
- python大全 (31)
- python次方 (33)
- python桌面 (32)
- python总结 (34)
- python浏览器 (32)
- python 请求 (32)
- python 前端 (32)
- python验证码 (33)
- python 题目 (32)
- python 文件写 (33)
- python中的用法 (32)