Version des API et ABI¶
CPython révèle son numéro de version dans les macros suivantes. À noter qu'ils correspondent au code de la version compilée avec, pas nécessairement la version utilisée à l'exécution.
Voir Stabilité de l’API C pour une discussion sur la stabilité des API et ABI entre (ou en fonction) de la version.
-
PY_MAJOR_VERSION¶ Le
3dans3.4.1a2.)
-
PY_MINOR_VERSION¶ Le
4dans3.4.1a2.
-
PY_MICRO_VERSION¶ Le
1dans3.4.1a2.)
-
PY_RELEASE_LEVEL¶ The
ain3.4.1a2. This can be0xAfor alpha,0xBfor beta,0xCfor release candidate or0xFfor final.
-
PY_RELEASE_SERIAL¶ Le
2dans3.4.1a2. Nul pour des versions finales.
-
PY_VERSION_HEX¶ Le numéro de version de Python encodé en un seul entier.
L'information sur la version sous-jacente peut être trouvée en la traitant comme un nombre sous 32 bits de la manière suivante:
Bytes
Bits (ordre gros-boutiste)
Signification
Valeur pour
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_SERIAL0x2Ainsi,
0x030401a2est la version en notation hexadécimale sur un entier de3.4.1a2et0x030a00f0est la version en notation hexadécimale sur un entier de3.10.0
Toutes les macros données sont définies dans Include/patchlevel.h.