Python 3.9.1
發布日期:2020 年 12 月 7 日
這是 Python 3.9 的第一個維護版本。
注意:您目前查看的是 Python 3.9.1,這是針對舊版 3.9 系列的錯誤修復版本。Python 3.11 現已成為 Python 3 的最新功能版本系列。點此取得 3.11.x 的最新版本。
自 3.9.0 以來,我們進行了 282 項變更,這是一個相當顯著的數量。作為對比,3.8.1 自 3.8.0 以來僅有 192 次提交。
安裝程式新聞
3.9.1 是第一個支援 macOS 11 Big Sur 的 Python 版本。透過 Xcode 11 或更新版本,現在可以建置適用於 Apple Silicon 的「Universal 2」二進位檔案。我們以 macos11.0 變體的形式提供此類安裝程式。此安裝程式可部署回舊版本,並已在低至 OS X 10.9 的版本上進行測試。由於我們仍在等待更新版本的 pip,請將 macos11.0 安裝程式視為實驗性質。
若沒有 Ronald Oussoren、Ned Deily 以及來自 Apple 的 Lawrence D’Anna 的努力,這項工作將無法完成。感謝你們!
這是第一個在 Windows 上預設使用 64 位元安裝程式的 Python 版本。安裝程式現在也會主動禁止在 Windows 7 上安裝。Python 3.9 與這個已不受支援的 Windows 版本不相容。
3.9 系列相比 3.8 的主要新功能
Python 3.9 的一些主要新功能和變更包括:
- PEP 573,來自 C 擴充方法的模組狀態存取 (Module State Access)
- PEP 584,
dict中的聯集運算子 - PEP 585,標準集合中的型別提示泛型
- PEP 593,彈性函式與變數註解
- PEP 602,Python 採用穩定的年度發行週期
- PEP 614,放寬裝飾器的語法限制
- PEP 615,標準函式庫中對 IANA 時區資料庫的支援
- PEP 616,用於移除字串前綴和後綴的方法
- PEP 617,CPython 的新 PEG 解析器
- BPO 38379,垃圾回收不會因復活動態物件而阻塞;
- BPO 38692,新增 os.pidfd_open,可在沒有競爭條件和訊號的情況下進行行程管理;
- BPO 39926,Unicode 支援更新至版本 13.0.0;
- BPO 1635741,當 Python 在同一行程中多次初始化時,不再洩漏記憶體;
- 多個 Python 內建函式 (range, tuple, set, frozenset, list, dict) 現在透過 PEP 590 vectorcall 進行加速;
- 多個 Python 模組 (_abc, audioop, _bz2, _codecs, _contextvars, _crypt, _functools, _json, _locale, operator, resource, time, _weakref) 現在使用 PEP 489 定義的多階段初始化;
- 多個標準函式庫模組 (audioop, ast, grp, _hashlib, pwd, _posixsubprocess, random, select, struct, termios, zlib) 現在使用 PEP 384 定義的穩定 ABI。
您可以在此版本的「新功能 (What's New)」文件中找到更完整的列表。
更多資源
- 線上文件
- PEP 596,3.9 發行時程
- 請至 https://bugs.python.org 回報錯誤。
- 資助 Python 及其社群.
接下來是一些完全不同的內容
亞瑟 (Eric Idle):早安,我想買本書,拜託。
店員 (John Cleese):噢,好吧,恐怕我們沒有書。(試圖藏起來)
亞瑟:抱歉?
店員:我們沒有書。剛好賣光了。早安。
亞瑟:那這些是什麼?
店員:什麼是什麼?噢!這些啊,啊哈,哈哈。你是指這些……書。
亞瑟:對。
店員:它們……它們全都賣掉了。早安。
亞瑟:全部都賣掉了?
店員:每一本都賣光了。沒有一本是還沒賣出的狀態。早安。
亞瑟:等一下,這其中肯定有問題。
店員:什麼,哪裡?你沒有看到什麼吧?
亞瑟:沒有,但我認為這其中肯定有問題。
店員:不不,這裡什麼事都沒有 (對外喊道) 而且他沒看到任何東西。早安。
亞瑟:噢,好吧,我想買一本《假牙圖解史》。
店員:天啊,你的膽子真大。
亞瑟:什麼?
店員:(掏出槍) 你到底知道多少?
亞瑟:什麼關於什麼的?
店員:你是英國牙醫協會派來的嗎?
亞瑟:不,我是個菸草商。
店員:待在那裡別動。你休想活著離開這間書店。
亞瑟:為什麼不?
店員:你知道得太多了,我的牙醫朋友。
亞瑟:我什麼都不知道。
店員:從實招來吧。你是牙醫對吧。
亞瑟:不,我是個菸草商。
店員:一個剛好要買一本關於牙齒的書的菸草商?
檔案
| 版本 | 作業系統 | 說明 | MD5 總和檢查碼 | 檔案大小 | GPG |
|---|---|---|---|---|---|
| Gzip 壓縮原始碼封存檔 (Gzipped source tarball) | 原始碼版本 | 429ae95d24227f8fa1560684fad6fca7 | 24.2 MB | SIG | |
| XZ 壓縮原始碼封存檔 (XZ compressed source tarball) | 原始碼版本 | 61981498e75ac8f00adcb908281fadb6 | 18.0 MB | SIG | |
| macOS 64 位元 Intel 安裝程式 | macOS | 適用於 macOS 10.9 及更高版本 | 74f5cc5b5783ce8fb2ca55f11f3f0699 | 28.4 MB | SIG |
| macOS 64 位元 universal2 安裝程式 | macOS | 適用於 macOS 10.9 及更新版本,包含 Apple Silicon 上的 macOS 11 Big Sur(實驗性支援) | 8b19748473609241e60aa3618bbaf3ed | 35.7 MB | SIG |
| Windows 安裝程式 (64 位元) | Windows | 建議使用 | b3fce2ed8bc315ad2bc49eae48a94487 | 26.9 MB | SIG |
| Windows 安裝程式 (32 位元) | Windows | dde210ea04a31c27488605a9e7cd297a | 25.9 MB | SIG | |
| Windows 說明檔 | Windows | c49d9b6ef88c0831ed0e2d39bc42b316 | 8.4 MB | SIG | |
| Windows 嵌入式套件 (64 位元) | Windows | e70e5c22432d8f57a497cde5ec2e5ce2 | 8.0 MB | SIG | |
| Windows 嵌入式套件 (32 位元) | Windows | 96c6fa81fe8b650e68c3dd41258ae317 | 7.2 MB | SIG |
