CPython 透過以下巨集 (macro) 公開其版本號。請注意,對應到的是建置 (built) 所用到的版本,並不一定是執行環境 (run time) 所使用的版本。
關於跨版本 API 和 ABI 穩定性的討論,請見 C API 穩定性。
在 3.4.1a2
中的 3
。
在 3.4.1a2
中的 4
。
在 3.4.1a2
中的 1
。
在 3.4.1a2
中的 a
。0xA
代表 alpha 版本、0xB
代表 beta 版本、0xC
為發布候選版本、0xF
則為最終版。
在 3.4.1a2
中的 2
。零則為最終發布版本。
被編碼為單一整數的 Python 版本號。
所代表的版本資訊可以用以下規則將其看做是一個 32 位元數字來獲得:
位元組串 |
位元(大端位元組序 (big endian order)) |
意義 |
|
---|---|---|---|
1 |
1-8 |
|
|
2 |
9-16 |
|
|
3 |
17-24 |
|
|
4 |
25-28 |
|
|
29-32 |
|
|
因此 3.4.1a2
代表 hexversion 0x030401a2
、3.10.0
代表 hexversion 0x030a00f0
。
使用它進行數值比較,例如 #if PY_VERSION_HEX >= ...
。
該版本也可透過符號 Py_Version
獲得。
編碼為單個常數整數的 Python 執行環境版本號,格式與 PY_VERSION_HEX
巨集相同。這包含在執行環境使用的 Python 版本。
在 3.11 版被加入.
所有提到的巨集都定義在 Include/patchlevel.h。