Versiones de API y ABI¶
CPython expone su número de versión en las siguientes macros. Tenga en cuenta que estos corresponden a la versión con la que se construye el código, no necesariamente la versión utilizada en tiempo de ejecución.
Consulte Estabilidad de la API en C para obtener una discusión sobre la estabilidad de API y ABI en todas las versiones.
-
PY_MAJOR_VERSION¶
El
3en3.4.1a2.
-
PY_MINOR_VERSION¶
El
4en3.4.1a2.
-
PY_MICRO_VERSION¶
El
1en3.4.1a2.
-
PY_RELEASE_LEVEL¶
La
aen3.4.1a2. Puede ser0xApara la versión alfa,0xBpara la versión beta,0xCpara la versión candidata o0xFpara la versión final.
-
PY_RELEASE_SERIAL¶
El
2en3.4.1a2, cero para lanzamientos finales.
-
PY_VERSION_HEX¶
El número de versión de Python codificado en un solo entero.
La información de la versión subyacente se puede encontrar tratándola como un número de 32 bits de la siguiente manera:
Bytes
Bits (orden big-endian)
Significado
Valor para
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_SERIAL0x2Así,
3.4.1a2es la hexadecimal0x030401a2y3.10.0es la hexadecimal0x030a00f0.Use esto para comparaciones numéricas, por ejemplo
#if PY_VERSION_HEX >= ....Esta versión también está disponible a través del símbolo
Py_Version.
-
const unsigned long Py_Version¶
- Part of the Stable ABI since version 3.11.
El número de versión de Python en tiempo de ejecución codificado en un único entero constante, con el mismo formato que la macro
PY_VERSION_HEX. Contiene la versión de Python utilizada en tiempo de ejecución.Added in version 3.11.
Todas las macros dadas se definen en Include/patchlevel.h.