API 和 ABI 版本控制

PY_VERSION_HEX是用单个整数编码的 Python 版本号。

例如,如果PY_VERSION_HEX设置为0x030401a2,则可以pass以下方式将其视为 32 位数字来找到基础版本信息:

Note

Bytes位(大端 Sequences)Meaning
11-8PY_MAJOR_VERSION(3.4.1a2中的3)
29-16PY_MINOR_VERSION(3.4.1a2中的4)
317-24PY_MICRO_VERSION(3.4.1a2中的1)
425-28PY_RELEASE_LEVEL(对于 alpha 来说是0xA,对于 Beta 是0xB,对于候选发布者是0xC,对于finally发布者是0xF),在这种情况下,它是 alpha。
29-32PY_RELEASE_SERIAL(3.4.1a2中的2,finally版本为零)

因此3.4.1a2是 hexversion 0x030401a2

所有给定的宏都在Include/patchlevel.h中定义。