API e Versionamento de ABI¶
O CPython expõe seu número de versão nas seguintes macros. Note que estes correspondem com o código da versão que está construída, não necessariamente a versão usada no run time.
Veja Estabilidade da API C para uma discussão da estabilidade da API e ABI através das versões.
-
PY_MAJOR_VERSION¶
O
3em3.4.1a2.
-
PY_MINOR_VERSION¶
O
4em3.4.1a2.
-
PY_MICRO_VERSION¶
O
1em3.4.1a2.
-
PY_RELEASE_LEVEL¶
O
aem3.4.1a2. Isto pode ser0xApara alfa,0xBpara beta,0xCpara o candidato a lançamento ou0xFpara final.
-
PY_RELEASE_SERIAL¶
O
2em3.4.1a2. Zero para os lançamentos finais.
-
PY_VERSION_HEX¶
O número da versão do Python codificado em um único inteiro.
As informações da versão subjacente podem ser achadas tratando-as como um número de 32 bits da seguinte maneira:
Bytes
Bits (big endian order)
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_SERIAL0x2Assim
3.4.1a2é a versão hex0x030401a2e3.10.0é a versãos hex0x030a00f0.Use isso para comparações numéricas como, por exemplo,
#if PY_VERSION_HEX >= ....Esta versão também está disponível através do símbolo
Py_Version.
-
const unsigned long Py_Version¶
- Parte da ABI Estável desde a versão 3.11.
O número da versão do runtime do Python codificado em um único inteiro constante, com o mesmo formato da macro
PY_VERSION_HEX. Ele contém a versão do Python usada em tempo de execução.Adicionado na versão 3.11.
Todas as macros dadas estão definidas em Include/patchlevel.h.