Версионирование API и ABI¶
PY_VERSION_HEX
- номер версии Python, кодированная одним целым числом.
Например, если для PY_VERSION_HEX
установлено значение 0x030401a2
, базовая
информация о версии может быть найдена путем обработки ее как 32 битового числа
следующим образом
Байты Биты (прямой порядок байтов) Смысл 1
1-8
PY_MAJOR_VERSION
(3
в3.4.1a2
)2
9-16
PY_MINOR_VERSION
(4
в3.4.1a2
)3
17-24
PY_MICRO_VERSION
(1
в3.4.1a2
)4
25-28
PY_RELEASE_LEVEL
(0xA
для альфа,0xB
для бета,0xC
для релиз кандидата и0xF
для финального), в этом случае альфа.29-32
PY_RELEASE_SERIAL
(2
в3.4.1a2
, ноль для финальных релизов)
Таким образом, 3.4.1a2
является шестнадцатеричным 0x030401a2
.
Все данные макросы определены в Include/patchlevel.h.