2025 年 5 月 7 日,Python 官方發布了 Python 3.14.0 的首個 Beta 版本。這個版本帶來了眾多新特性和改進,讓我們一起來看看這個版本的亮點。
主要新特性
Python 3.14.0 Beta 1 引入了多項重要的新功能和改進:
1. 延遲評估類型注解 (PEP 649)
類型注解的評估現在被延遲,這改進了使用注解的語義。這意味著類型注解將不再在模塊導入時被立即評估,而是在需要時才進行評估,這可以提高性能并解決一些循環引用問題。
2. 模板字符串字面量 (PEP 750)
引入了模板字符串字面量(t-strings)用于自定義字符串處理,使用類似于 f-strings 的熟悉語法。這為字符串處理提供了更多的靈活性和可能性。
3. Zstandard 壓縮算法支持 (PEP 784)
新增compression.zstd
模塊,提供對 Zstandard 壓縮算法的支持。Zstandard 是一種快速且高效的壓縮算法,現在可以直接在 Python 標準庫中使用。
4. 簡化的異常表達式 (PEP 758)
except
和except*
表達式現在可以省略括號,使代碼更加簡潔。
5. REPL 語法高亮和 CLI 顏色支持
Python REPL 現在支持語法高亮,同時unittest
、argparse
、json
和calendar
等 CLI 工具也支持顏色輸出,提升了開發體驗和可讀性。
6. 零開銷外部調試器接口 (PEP 768)
為 CPython 提供了一個零開銷的外部調試器接口,這將使調試 Python 程序變得更加高效。
7. UUID 版本 6-8 支持
uuid
模塊現在支持 UUID 版本 6-8,并且版本 3-5 和 8 的生成速度提高了 40%。
8. 禁止從 finally 塊退出的控制流 (PEP 765)
禁止return
/break
/continue
語句從finally
塊退出,這有助于避免一些難以追蹤的錯誤。
9. 改進的 C API 配置 (PEP 741)
提供了一個改進的 C API 用于配置 Python,使擴展開發更加便捷。
10. 新型解釋器
對于某些較新的編譯器,提供了一種新型解釋器,可以顯著提高性能。目前是可選的,需要從源代碼構建。
11. 改進的錯誤消息
錯誤消息得到了改進,使調試和問題排查更加直觀。
12. HMAC 的內置實現
使用 HACL*項目的正式驗證代碼提供了 HMAC 的內置實現。
構建變更 1. 簽名方式變更 (PEP 761)
Python 3.14 及以后版本不再提供 PGP 簽名用于發布構件。相反,建議驗證者使用 Sigstore。
2. 實驗性 JIT 編譯器
官方 macOS 和 Windows 發布二進制文件包含一個實驗性的 JIT 編譯器,這有望提高 Python 程序的執行速度。
不兼容變更、移除和新的棄用
有一些不兼容變更需要注意
Python 的一些功能被移除或標記為棄用
C API 的一些功能被移除或標記為棄用
所有待處理的棄用功能概覽可在文檔中查看
Windows 平臺的安裝程序正在被新的安裝管理器取代,可以從 Windows 商店或 FTP 頁面安裝。JSON 文件可供下載,包含此版本所有可安裝包的列表,包括文件 URL 和哈希值,但安裝最新版本不需要此文件。傳統安裝程序將在 3.14 和 3.15 版本中繼續提供。
更多資源
在線文檔 [1]
PEP 745 [2] ,3.14 發布計劃
在 github.com/python/cpython/issues [3] 報告 Bug
幫助資助 Python 及其社區 [4]
在發布過程中,發現了一個測試問題,該測試僅在按順序運行并且僅在運行一定數量的其他測試后才會失敗。這似乎是測試本身的問題,將在 Beta 2 中修復。詳情請參見python/cpython#133532[5]。
趣聞:關于π的歷史
Python 3.14 版本號與數學常數π(3.14)相呼應。數學常數π用希臘字母π表示,代表圓的周長與直徑的比值。
第一個使用π作為這個比值符號的是威爾士自學成才的數學家威廉·瓊斯(William Jones),時間是 1706 年。他出生于 1675 年,在安格爾西島(Ynys M?n)的 Llanfihangel Tre'r Beirdd,只在當地慈善學校接受了基礎教育。然而,他父母農場的主人注意到了他的數學才能,安排他搬到倫敦在一家銀行工作。
20 歲時,他在皇家海軍服役,教授水手數學并協助船舶導航。七年后回到倫敦后,他成為咖啡館的數學教師和私人家教。1706 年,瓊斯出版了《Synopsis Palmariorum Matheseos》,其中使用符號π表示圓的周長與直徑的比值。
瓊斯也是第一個意識到π是無理數的人,這意味著它可以寫成無限小數,但不能寫成兩個整數的分數。
為什么選擇π?據認為瓊斯使用希臘字母π是因為它是 perimetron 或 perimeter(周長)的第一個字母。
結語
Python 3.14.0 的下一個預發布版本將是 3.14.0b2,計劃于 2025 年 5 月 27 日發布。
本文基于 Python 官方博客發布的信息整理,原文鏈接:Python 3.14.0 beta 1 is here![6]
參考資料
在線文檔: https://docs.python.org/3.14/
PEP 745: https://peps.python.org/pep-0745/
github.com/python/cpython/issues: https://github.com/python/cpython/issues
幫助資助 Python 及其社區: https://www.python.org/psf/donations/
[5]
python/cpython#133532: https://github.com/python/cpython/issues/133532
[6]
Python 3.14.0 beta 1 is here!: https://pythoninsider.blogspot.com/2025/05/python-3140-beta-1-is-here.html
特別聲明:以上內容(如有圖片或視頻亦包括在內)為自媒體平臺“網易號”用戶上傳并發布,本平臺僅提供信息存儲服務。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.