Python 3.12.0rc1
釋出日期:2023 年 8 月 6 日
這是 Python 3.12.0 的第一個候選釋出版本。
此版本 3.12.0rc1 是倒數第二個釋出預覽版。進入釋出候選階段後,此候選釋出版本與最終釋出版本之間只允許經過審查的明確錯誤修復程式碼更改。第二個候選釋出版本(也是計劃中的最後一個釋出預覽版)定於 2023 年 9 月 4 日星期一發布,而 3.12.0 的官方版本定於 2023 年 10 月 2 日星期一發布。
從現在起,3.12 系列將不再進行 ABI 更改,目標是儘可能減少程式碼更改。
行動號召
我們強烈鼓勵第三方 Python 專案的維護者在此階段準備其專案與 3.12 的相容性,並在必要時在 PyPI 上釋出 Python 3.12 wheels,以準備好 3.12.0 的最終釋出。任何基於 Python 3.12.0rc1 構建的二進位制 wheels 都將與 Python 3.12 的未來版本相容。一如既往,請向Python 錯誤跟蹤器報告任何問題。
請記住,這是一個預覽版本,儘管它與最終版本儘可能接近,但不建議將其用於生產環境。
核心開發者:是時候著手撰寫文件了
- 你們所有的更改都已正確地記錄了嗎?
- 它們在“新增功能”中提到了嗎?
- 你是否注意到其他已知更改的文件不足?
與 3.11 相比,3.12 系列的主要新功能
新特性
- 更靈活的 f-string 解析,允許許多以前不允許的寫法 (PEP 701)。
- 在 Python 程式碼中支援緩衝區協議 (PEP 688)。
- 一個新的除錯/效能分析 API (PEP 669)。
- 支援帶有獨立全域性直譯器鎖的隔離子直譯器 (PEP 684)。
- 錯誤訊息的進一步改進。更多可能由拼寫錯誤引起的異常現在會向用戶提供建議。
- 支援 Linux
perf分析器在追蹤資訊中報告 Python 函式名。 - 許多大大小小的效能改進(例如PEP 709),預計整體效能提升 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 生成的程式碼帶來問題。)
(嘿,核心開發者們,如果你們認為重要的功能沒有出現在這個列表中,請告知 Thomas。)
有關 Python 3.12 更改的更多詳細資訊,請參閱Python 3.12 中的新增功能。Python 3.12 的下一個預釋出版本將是 3.12.0rc2,即最終候選釋出版本,目前定於 2023 年 9 月 4 日釋出。
更多資源
- 線上文件.
- PEP 693,Python 3.12 釋出時間表。
- 透過 GitHub Issues 報告錯誤。
- 幫助資助 Python 及其社群.
檔案
| 版本 | 作業系統 | 描述 | MD5 校驗和 | 檔案大小 | Sigstore | GPG | |
|---|---|---|---|---|---|---|---|
| Gzip 壓縮的原始碼包 | 原始碼釋出版 | f167ea3ce8036eb4feb1dc5aee82b293 | 25.7 MB | .sigstore | SIG | ||
| XZ 壓縮的原始碼包 | 原始碼釋出版 | 6085d285160b2c94e1239d0afd42fdc8 | 19.3 MB | .sigstore | SIG | ||
| macOS 64 位 universal2 安裝程式 | macOS | 適用於 macOS 10.9 及更高版本 | 0558badcc5c0e23929b7936111695e2e | 42.9 MB | .sigstore | SIG | |
| Windows 安裝程式 (64位) | Windows | 推薦 | 5538f4a81bc42cc69ad20ee56d585d55 | 25.0 MB | .sigstore | SIG | |
| Windows 安裝程式 (32位) | Windows | 5733deefef4eee00cb205867bc7c9891 | 23.7 MB | .sigstore | SIG | ||
| Windows 安裝程式 (ARM64) | Windows | 實驗性 | a6af3b5b61b0a2a314fe64f1a46619dc | 24.1 MB | .sigstore | SIG | |
| Windows 可嵌入包 (64位) | Windows | 170f06277ed89a34454b81255a1e6ca4 | 10.5 MB | .sigstore | SIG | ||
| Windows 可嵌入包 (32位) | Windows | c3113eef1a7b9ddae881c7c570f72dd1 | 9.4 MB | .sigstore | SIG | ||
| Windows 可嵌入包 (ARM64) | Windows | 076fe8502da766cf0e8887129d6c25cf | 9.6 MB | .sigstore | SIG | ||
