Python 3.12.8
发布日期: 2024年12月3日
这是 Python 3.12 的第八个维护版本
Python 3.12.8 是 Python 3.12 的最新维护版本,自 3.12.7 版本以来,包含了超过 250 项错误修复、构建改进和文档变更。
此版本中的安全内容
- gh-126623:将 libexpat 升级至 2.6.4,以修复 CVE-2024-50602。
- gh-124651:在
venv
激活脚本中正确地为模板字符串添加引号。
与 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 社区。
更新 (2025年8月28日)
由于收到安全问题报告,我们已撤销用于此版本 Windows 二进制文件的代码签名证书。因此,这些文件可能会下载、安装或运行失败。后续版本不受影响。更多更新信息,请参见此公告帖子。
文件
版本 | 操作系统 | 描述 | MD5 校验和 | 文件大小 | Sigstore | SBOM | GPG | |
---|---|---|---|---|---|---|---|---|
Gzip 压缩的源码包 | 源码发布版 | 304473cf367fa65e450edf4b06b55fcc | 25.8 MB | .sigstore | SPDX | SIG | ||
XZ 压缩的源码包 | 源码发布版 | d46e5bf9f2e596a3ba45fc0b3c053dd2 | 19.5 MB | .sigstore | SPDX | SIG | ||
macOS 64 位 universal2 安装程序 | macOS | 适用于 macOS 10.13 及更高版本 | dc762fdc78e9cfecf516db31054de9fd | 44.0 MB | .sigstore | SIG | ||
Windows 安装程序 (64位) | Windows | 推荐 | 2f2ab2472a6aa29f8755c72c58f58f4b | 25.8 MB | .sigstore | SPDX | SIG | |
Windows 安装程序 (32位) | Windows | 745f11c8474893da55e5966173375cc8 | 24.6 MB | .sigstore | SPDX | SIG | ||
Windows 安装程序 (ARM64) | Windows | 实验性 | ff0d440c2cc4aaddf81c9e247682bfa9 | 25.1 MB | .sigstore | SPDX | SIG | |
Windows 可嵌入包 (64位) | Windows | 1e86b04bc7d27c5c06edf8f617e1184a | 10.6 MB | .sigstore | SPDX | SIG | ||
Windows 可嵌入包 (32位) | Windows | cd4a16b1d27540b84e7a44327f69ee5a | 9.5 MB | .sigstore | SPDX | SIG | ||
Windows 可嵌入包 (ARM64) | Windows | a1631f5cb0b3d5d1a27b5c3edc0f80e3 | 9.9 MB | .sigstore | SPDX | SIG |