Python 3.11.0 第四个 Beta 版本已发布。按照此前的发布日程,Beta4 原本是 Beta 阶段的最后一个版本,但目前计划出现了变动,开发团队表示还需要再发布 Beta5,目标是在 Beta5 之后没有 ABI 更改,并且在第一个候选版本 3.11.0rc1 之后尽可能少地更改代码。为实现这一目标,在 Beta 阶段尽可能多地进行测试非常重要。
在候选版发布之前,功能可能会被修改或在极少数情况下被删除。因此不建议在生产环境中使用 Beta 版本。
与 3.10 相比,Python 3.11 的主要变化
在错误信息报告中引入细粒度的 Error Locations
Exception Groups and except*
Self 类型
可变参数泛型 (Variadic Generics
tomllib:支持在标准库中解析 TOML
任意文字字符串类型
将单个 TypedDict 项目标记为必需或可能缺失
将任务组引入 asyncio
Data Class 转换
正则表达式现在支持原子分组 (Atomic grouping:((?>...,以及占有型量词 (*+, ++, ?+, {m,n}+
Faster Cpython Project 已经出现了一些令人振奋的结果:Python 3.11 比 Python 3.10 快 10%~60%
Python 3.11 的下一个预览版本将是 3.11.0b5,目前计划于 2022 年 7 月 25 日发布。正式版则计划于 2022 年 10 月 3 日发布。