注意: 虽然 JavaScript 对于本网站不是必需的,但您与内容的互动将受到限制。请开启 JavaScript 以获得完整的体验。

Python 3.12.6

发布日期: 2024年9月6日

这是 Python 3.12 的第六个维护版本。

Python 3.12 是 Python 编程语言的最新主要版本,其中包含许多新功能和优化。3.12.6 是最新的维护版本,自 3.12.5 以来,包含了约 90 个错误修复、构建改进和文档变更。这是一个为解决以下安全问题而发布的加速版本。

  • gh-123678gh-116741:将捆绑的 libexpat 升级到 2.6.3,以修复 CVE-2024-28757CVE-2024-45490CVE-2024-45491CVE-2024-45492
  • gh-123067:修复了 http.cookies 在解析带有反斜杠的 " 引号引起来的 cookie 值时存在的二次复杂度问题。修复了 CVE-2024-7592。
  • gh-121285:从 tarfile 对 hdrcharset、PAX 和 GNU稀疏文件头的解析中移除了回溯操作。对应 CVE-2024-6232。
  • gh-102988:当遇到无效电子邮件地址时,email.utils.getaddresses()email.utils.parseaddr() 现在会在更多情况下返回二元组 ('', ''),而不是可能不准确的值。为这两个函数添加了可选的 strict 参数:使用 strict=False 可获得旧的行为,接受格式错误的输入。可以使用 getattr(email.utils, 'supports_strict_parsing', False) 来检查 strict 参数是否可用。这改进了对 CVE-2023-27043 的修复。
  • gh-123270:对 zipfile.Path 中的名称进行清理,以避免无限循环(gh-122905),同时不破坏使用合法字符的内容。对应 CVE-2024-8088。

此外,正如在 3.12 的上一个版本中提到的,此版本 停止了对 macOS 10.9 至 10.12 版本的支持。自 2019 年以来,苹果已不再支持低于 10.13 的 macOS 版本,维持对这些旧版本的支持变得过于困难。(所有 Python 3.13 版本均已停止对它们的支持。)

与 3.11 相比,3.12 系列的主要新功能

新特性

类型注解

弃用

  • 根据 PEP 623,unicode 对象的 C 实现中已弃用的 wstrwstr_length 成员已被移除。
  • unittest 模块中,一些长期弃用的方法和类已被移除。(它们自 Python 3.1 或 3.2 起就已被弃用)。
  • 已弃用的 smtpddistutils 模块已被移除(参见 PEP 594PEP 632)。setuptools 包继续提供 distutils 模块。
  • 一些其他陈旧、损坏和已弃用的函数、类和方法已被移除。
  • 字符串中无效的反斜杠转义序列现在会发出 SyntaxWarning 警告,而不是 DeprecationWarning,使其更加显眼。(它们将来会成为语法错误。)
  • 为准备性能增强,整数的内部表示已发生变化。(这不应影响大多数用户,因为它是一个内部细节,但可能会给 Cython 生成的代码带来问题。)

有关 Python 3.12 变更的更多详情,请参见“Python 3.12 的新变化”

更多资源

完整更新日志

文件

版本 操作系统 描述 MD5 校验和 文件大小 Sigstore SBOM GPG
Gzip 压缩的源码包 源码发布版 c2f1dd5c8807ee50b778684b7958ee28 25.8 MB .sigstore SPDX SIG
XZ 压缩的源码包 源码发布版 cb669514937d3e894e74081627722aa5 19.5 MB .sigstore SPDX SIG
macOS 64 位 universal2 安装程序 macOS 适用于 macOS 10.13 及更高版本 9fe25ae8e0dfea2854e6bce62e69a3dd 43.2 MB .sigstore SIG
Windows 安装程序 (64位) Windows 推荐 d8548aa7609a762ba66f62eeb2ca862d 25.3 MB .sigstore SPDX SIG
Windows 安装程序 (32位) Windows 9b4c59154c46444e082266d8bd3a6429 24.1 MB .sigstore SPDX SIG
Windows 安装程序 (ARM64) Windows 实验性 4ae3dfd4a32963ec6e6578890d97b19c 24.6 MB .sigstore SPDX SIG
Windows 可嵌入包 (64位) Windows ae256f31ee4700eba679802233bff3e9 10.5 MB .sigstore SPDX SIG
Windows 可嵌入包 (32位) Windows b6eecbdfd865e4a3ae8bed93b9f2cd95 9.4 MB .sigstore SPDX SIG
Windows 可嵌入包 (ARM64) Windows e6c889dd2ae2dacfbfd9cb5faeb7aefe 9.8 MB .sigstore SPDX SIG