Python 3.13.0rc1
釋出日期:2024年8月1日
這是 Python 3.13.0 的第一個釋出候選版本。
此版本 3.13.0rc1 是倒數第二個釋出預覽版。進入釋出候選階段後,此釋出候選版本與最終釋出版本之間只允許經過審查的、明確的錯誤修復程式碼更改。第二個候選版本(也是最後一個計劃的釋出預覽版)定於2024年9月3日星期二釋出,而 3.13.0 的正式釋出定於2024年10月1日星期二釋出。
從現在起,3.13 系列將不再進行 ABI 更改,目標是儘可能減少程式碼更改。
行動號召
我們強烈鼓勵第三方 Python 專案的維護者在此階段準備其專案與 3.13 的相容性,並在必要時在 PyPI 上釋出 Python 3.13 wheel 包,以準備 3.13.0 的最終釋出。針對 Python 3.13.0rc1 構建的任何二進位制 wheel 包將與未來版本的 Python 3.13 相容。一如既往,請向Python 錯誤跟蹤器報告任何問題。
請記住,這是一個預覽版本,儘管它與最終版本儘可能接近,但不建議將其用於生產環境。
核心開發者:是時候著手撰寫文件了
- 你們所有的更改都已正確地記錄了嗎?
- 它們在新特性中提及了嗎?
- 你是否注意到其他已知更改的文件不足?
3.13 系列相較於 3.12 的主要新特性
Python 3.13 的一些主要新特性和變化如下:
新特性
- 一個基於 PyPy 的全新且改進的互動式直譯器,具有多行編輯和顏色支援,以及帶顏色的異常追溯資訊。
- 一個實驗性自由執行緒構建模式,它停用全域性直譯器鎖,允許執行緒更併發地執行。此構建模式也可作為 Windows 和 macOS 安裝程式中的實驗性功能使用。
- 一個初步的、實驗性 JIT,為顯著的效能改進奠定了基礎。
- 內建函式
locals()(及其 C 語言等效函式)在修改其返回的對映時,現在有了明確定義的語義,這使得偵錯程式可以更一致地執行。 - (迴圈)垃圾收集器現在是增量的,這意味著在有大量物件的程式中,收集暫停時間會更短。
- 現已包含 mimalloc 的修改版本,這是一個可選功能,但在平臺支援的情況下預設啟用,並且是自由執行緒構建模式所必需的。
- 文件字串(Docstrings)現在會去除前導縮排,從而減少了記憶體使用和 .pyc 檔案的大小。(大多數處理文件字串的工具已經會去除前導縮排。)
- dbm 模組新增了一個 dbm.sqlite3 後端,在建立新檔案時預設使用該後端。
- 支援的最低 macOS 版本從 10.9 更改為 10.13 (High Sierra)。未來的版本將不再支援更舊的 macOS。
- WASI 現在是第 2 級支援平臺。Emscripten 不再是官方支援的平臺(但 Pyodide 會繼續支援 Emscripten)。
- iOS 現在是三級支援平臺,Android 也即將推出。
型別提示
- 支援在型別引數中使用型別預設值。
- 一個新的型別縮小注解:
typing.TypeIs。 - 一個用於 TypeDict 中只讀項的新註解。
- 一個用於在型別系統中標記棄用項的新註解。
移除和新的棄用項
- PEP 594(從標準庫中移除廢棄模組)計劃移除許多已棄用的模組:
aifc、audioop、chunk、cgi、cgitb、crypt、imghdr、mailcap、msilib、nis、nntplib、ossaudiodev、pipes、sndhdr、spwd、sunau、telnetlib、uu、xdrlib、lib2to3。 - 許多其他廢棄的類、函式和方法已從各種標準庫模組中移除。
- C API 移除和廢棄。(Alpha 1 中存在的一些移除在 Alpha 2 中被恢復,因為這些移除在當時被認為干擾性太大。)
- 新的廢棄項,其中大多數計劃從 Python 3.15 或 3.16 中移除。
(嘿,核心開發者們,如果你們認為重要的功能沒有出現在這個列表中,請告知 Thomas。)
有關 Python 3.13 更改的更多詳細資訊,請參閱Python 3.13 新特性。Python 3.13 的下一個預釋出版本將是 3.13.0rc2,也是最終的釋出候選版本,目前定於2024年9月3日釋出。
更多資源
- 線上文件
- PEP 719, 3.13 釋出時間表
- 請在 https://github.com/python/cpython/issues 報告錯誤。
- 直接為 Python 提供資金幫助(或透過 GitHub Sponsors),並支援 Python 社群。
檔案
| 版本 | 作業系統 | 描述 | MD5 校驗和 | 檔案大小 | Sigstore | SBOM | GPG | |
|---|---|---|---|---|---|---|---|---|
| Gzip 壓縮的原始碼包 | 原始碼釋出版 | 179bbe323a2118e491ecd7992d7295e2 | 26.2 MB | .sigstore | SPDX | SIG | ||
| XZ 壓縮的原始碼包 | 原始碼釋出版 | 9213ecfedc510ac2a14c0eeea96baf02 | 19.9 MB | .sigstore | SPDX | SIG | ||
| macOS 64 位 universal2 安裝程式 | macOS | 適用於 macOS 10.13 及更高版本 | 6331a05caae16933691fff1b73e2b989 | 65.1 MB | .sigstore | SIG | ||
| Windows 安裝程式 (64位) | Windows | 推薦 | 6e4bc83c1419c2fb2107699525fce143 | 25.4 MB | .sigstore | SPDX | SIG | |
| Windows 安裝程式 (32位) | Windows | b34a1ec90f60604afcd8be4d1fe63a8a | 24.1 MB | .sigstore | SPDX | SIG | ||
| Windows 安裝程式 (ARM64) | Windows | 實驗性 | f0b04c8bf03a13c8e3966e42a15f992a | 24.7 MB | .sigstore | SPDX | SIG | |
| Windows 可嵌入包 (64位) | Windows | 70ad0da3f448e973cd404d843ddc6cce | 11.9 MB | .sigstore | SPDX | SIG | ||
| Windows 可嵌入包 (32位) | Windows | 0d55f471d63c0e58e8ac890f31dabc8b | 10.4 MB | .sigstore | SPDX | SIG | ||
| Windows 可嵌入包 (ARM64) | Windows | 1435545c209ffe180fcb17839891b067 | 10.9 MB | .sigstore | SPDX | SIG | ||
