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 "3" en "3.4.1a2".

PY_MINOR_VERSION

   El "4" en "3.4.1a2".

PY_MICRO_VERSION

   El "1" en "3.4.1a2".

PY_RELEASE_LEVEL

   La "a" en "3.4.1a2". Puede ser "0xA" para la versión alfa, "0xB"
   para la versión beta, "0xC" para la versión candidata o "0xF" para
   la versión final.

PY_RELEASE_SERIAL

   El "2" en "3.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.1a2"       |
   |=========|===========================|===========================|============================|
   | 1       | 1-8                       | "PY_MAJOR_VERSION"        | "0x03"                     |
   +---------+---------------------------+---------------------------+----------------------------+
   | 2       | 9-16                      | "PY_MINOR_VERSION"        | "0x04"                     |
   +---------+---------------------------+---------------------------+----------------------------+
   | 3       | 17-24                     | "PY_MICRO_VERSION"        | "0x01"                     |
   +---------+---------------------------+---------------------------+----------------------------+
   | 4       | 25-28                     | "PY_RELEASE_LEVEL"        | "0xA"                      |
   |         +---------------------------+---------------------------+----------------------------+
   |         | 29-32                     | "PY_RELEASE_SERIAL"       | "0x2"                      |
   +---------+---------------------------+---------------------------+----------------------------+

   Así, "3.4.1a2" es la hexadecimal "0x030401a2" y "3.10.0" es la
   hexadecimal "0x030a00f0".

   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.
