API- und ABI-Versionierung¶
CPython exposes its version number in the following macros. Note that these correspond to the version code is built with, not necessarily the version used at run time.
Eine Erörterung der API- und ABI-Stabilität über verschiedene Versionen hinweg findest du unter C API Stability.
-
PY_MAJOR_VERSION¶
Die
3unter3.4.1a2.
-
PY_MINOR_VERSION¶
Die
4unter3.4.1a2.
-
PY_MICRO_VERSION¶
Die
1unter3.4.1a2.
-
PY_RELEASE_LEVEL¶
Die
aunter3.4.1a2. Dies kann0xAfür die Alpha-Version,0xBfür die Beta-Version,0xCfür den Release Candidate oder0xFfür die finale Version sein.
-
PY_RELEASE_SERIAL¶
Die
2unter3.4.1a2. Keine für endgültige Veröffentlichungen.
-
PY_VERSION_HEX¶
The Python version number encoded in a single integer.
The underlying version information can be found by treating it as a 32 bit number in the following manner:
Bytes
Bits (big endian order)
Meaning
Value for
3.4.1a21
1-8
PY_MAJOR_VERSION0x032
9-16
PY_MINOR_VERSION0x043
17-24
PY_MICRO_VERSION0x014
25-28
PY_RELEASE_LEVEL0xA29-32
PY_RELEASE_SERIAL0x2Thus
3.4.1a2is hexversion0x030401a2and3.10.0is hexversion0x030a00f0.Use this for numeric comparisons, e.g.
#if PY_VERSION_HEX >= ....This version is also available via the symbol
Py_Version.
-
const unsigned long Py_Version¶
- Teil der Stable ABI seit Version 3.11.
The Python runtime version number encoded in a single constant integer, with the same format as the
PY_VERSION_HEXmacro. This contains the Python version used at run time.Added in version 3.11.
All the given macros are defined in Include/patchlevel.h.