Python 3.12.5
发布日期: 2024年8月6日
这是 Python 3.12 的第五个维护版本
Python 3.12 是 Python 编程语言的最新主要版本,它包含了许多新特性和优化。3.12.5 是最新的维护版本,自 3.12.4 版本以来,包含了超过 250 个错误修复、构建改进和文档变更。
此版本的 Python 3.12 也默认附带 pip 24.2。但是,由于与旧版 macOS 不兼容,macOS 10.9 至 10.12 版本将在安装过程中(在“安装证书”步骤中)将其 pip 版本降级至 24.1.2。请参阅安装程序的 ReadMe 文件和关于此问题的 pip issue 以获取更多信息。自 2019 年以来,苹果公司已不再支持低于 10.13 版本的 macOS,维护对这些旧版本的支持正变得越来越困难。虽然此 3.12 版本仍然支持它们,但我们很可能在未来的 3.12 版本中被迫放弃对 macOS 10.12 及更早版本的支持。(Python 3.13 已经放弃了对它们的支持。)
与 3.11 相比,3.12 系列的主要新功能
新特性
- 更灵活的 f-string 解析,允许许多以前不允许的写法 (PEP 701)。
- 在 Python 代码中支持缓冲区协议 (PEP 688)。
- 新的调试/分析 API (PEP 669)。
- 支持带有独立全局解释器锁的隔离子解释器 (PEP 684)。
- 错误消息的进一步改进。更多可能由拼写错误引起的异常现在会向用户提供建议。
- 支持 Linux
perf
分析器在追踪信息中报告 Python 函数名。 - 许多大大小小的性能改进(例如 PEP 709 和对 BOLT 二进制优化器的支持),预计整体性能提升 5%。
类型注解
- 用于泛型类的新类型注解语法 (PEP 695)。
- 用于方法的新的 @override 装饰器 (PEP 698)。
弃用
- 根据 PEP 623,unicode 对象的 C 实现中已弃用的
wstr
和wstr_length
成员已被移除。 - 在
unittest
模块中,一些长期弃用的方法和类已被移除。(它们自 Python 3.1 或 3.2 起就已被弃用)。 - 已弃用的
smtpd
和distutils
模块已被移除(参见 PEP 594 和 PEP 632)。setuptools
包继续提供distutils
模块。 - 一些其他陈旧、损坏和已弃用的函数、类和方法已被移除。
- 字符串中无效的反斜杠转义序列现在会发出
SyntaxWarning
警告,而不是DeprecationWarning
,使其更加显眼。(它们将来会成为语法错误。) - 为准备性能增强,整数的内部表示已发生变化。(这不应影响大多数用户,因为它是一个内部细节,但可能会给 Cython 生成的代码带来问题。)
有关 Python 3.12 变更的更多详情,请参见“Python 3.12 的新变化”。
更多资源
- 在线文档.
- PEP 693,Python 3.12 发布时间表。
- 通过 GitHub Issues 报告错误。
- 直接资助 Python 或通过 GitHub Sponsors,并支持 Python 社区。
文件
版本 | 操作系统 | 描述 | MD5 校验和 | 文件大小 | Sigstore | SBOM | GPG | |
---|---|---|---|---|---|---|---|---|
Gzip 压缩的源码包 | 源码发布版 | d23d56b51d36a9d51b2b13d30c849d00 | 25.7 MB | .sigstore | SPDX | SIG | ||
XZ 压缩的源码包 | 源码发布版 | 02c7d269e077f4034963bba6befdc715 | 19.5 MB | .sigstore | SPDX | SIG | ||
macOS 64 位 universal2 安装程序 | macOS | 适用于 macOS 10.9 及更高版本 | 78bd8d0795062b1df63e2b8d8386a5fa | 43.5 MB | .sigstore | SIG | ||
Windows 安装程序 (64位) | Windows | 推荐 | bbcb2fcf9d739f776fb6414afc12c80d | 25.3 MB | .sigstore | SPDX | SIG | |
Windows 安装程序 (32位) | Windows | d151f5f116e11c4d40021527f51ddf67 | 24.0 MB | .sigstore | SPDX | SIG | ||
Windows 安装程序 (ARM64) | Windows | 实验性 | 365d59eff83dfea9af528df4ebd060cb | 24.5 MB | .sigstore | SPDX | SIG | |
Windows 可嵌入包 (64位) | Windows | 0f53697bdcecfb97b99ac8aa9d9a9e13 | 10.5 MB | .sigstore | SPDX | SIG | ||
Windows 可嵌入包 (32位) | Windows | 82dd15b14c307f5fcef80ccb45d6b404 | 9.4 MB | .sigstore | SPDX | SIG | ||
Windows 可嵌入包 (ARM64) | Windows | 62c81364c232644f280b06ef5f33a029 | 9.8 MB | .sigstore | SPDX | SIG |