Python 3.10¶
Python 3.10.0(正式版)于 2021 年 10 月 4 日发布。3.10 的特性定义在 PEP 619 中,对各项变更的详细说明可参见 What's New in Python 3.10。
新增语法特性 | 状态 | |
结构化模式匹配:规范 | ||
结构化模式匹配:动机与原理 | ||
结构化模式匹配:教程 | ||
现在正式允许使用带括号的上下文管理器 | ||
标准库中的新特性 | ||
为 zip 添加可选的长度检查 | ||
解释器改进 | ||
为调试及其他工具提供精确的行号 | ||
新增类型标注特性 | ||
允许以 X | Y 的形式书写联合类型 | ||
显式类型别名 | ||
参数规格变量 | ||
重要的弃用、移除或限制 | ||
要求 OpenSSL 1.1.1 或更新版本 | ||
弃用 distutils 模块。 | 不相关 | |
弃用 PyUnicodeObject 中的 wstr 成员并为其移除做准备。 | 不相关 | |
移除 Py_UNICODE 编码器 API | 不相关 | |
添加可选的 EncodingWarning | ||
其他语言变更:
| |
| |
接受整数参数的内置函数和扩展函数不再接受 | |
如果 | |
赋值表达式现在可以不加括号地用于集合字面量和集合推导式中,以及序列索引中(但不能用于切片)。 | |
函数新增了 | |
新增了两个内置函数 —— | |
静态方法( | |
在使用 | |
类对象和模块对象现在会按需惰性地创建空的标注字典。为保持向后兼容,标注字典存储在对象的 | |
由于存在副作用,在使用 | |
在使用 | |
| |
删除 | |
|
对内置模块的变更:
添加了缺失的 | |
| |
为 | |
hashlib 模块要求 OpenSSL 1.1.1 或更新版本。 | |
hashlib 模块对 OpenSSL 3.0.0 提供了初步支持。 | |
| |
为 VxWorks RTOS 添加了 | |
新增了 | |
新增了 | |
为 macOS 添加了 | |
新增了 | |
异常 | |
添加了使用 | |
添加了 | |
ssl 模块要求 OpenSSL 1.1.1 或更新版本。 | |
ssl 模块对 OpenSSL 3.0.0 提供了初步支持,并新增了 | |
使用已弃用的函数和已弃用的常量现在会导致 | |
ssl 模块现在具有更安全的默认设置。默认禁用不具备前向保密性或使用 SHA-1 MAC 的加密套件。安全级别 2 禁止使用安全强度低于 112 位的弱 RSA、DH 和 ECC 密钥。 | |
已弃用的协议 SSL 3.0、TLS 1.0 和 TLS 1.1 不再受到官方支持。Python 并不会主动阻止它们。然而,OpenSSL 的构建选项、发行版配置、厂商补丁以及加密套件可能会导致握手无法成功。 | |
为 | |
ssl 模块现在使用堆类型和多阶段初始化。 | |
新增了验证标志 | |
新增了 | |
新增了 | |
| |
注释