API 和 ABI 版本控制
PY_VERSION_HEX
是用单个整数编码的 Python 版本号。
例如,如果PY_VERSION_HEX
设置为0x030401a2
,则可以pass以下方式将其视为 32 位数字来找到基础版本信息:
Note
Bytes | 位(大端 Sequences) | Meaning |
---|---|---|
1 | 1-8 | PY_MAJOR_VERSION (3.4.1a2 中的3 ) |
2 | 9-16 | PY_MINOR_VERSION (3.4.1a2 中的4 ) |
3 | 17-24 | PY_MICRO_VERSION (3.4.1a2 中的1 ) |
4 | 25-28 | PY_RELEASE_LEVEL (对于 alpha 来说是0xA ,对于 Beta 是0xB ,对于候选发布者是0xC ,对于finally发布者是0xF ),在这种情况下,它是 alpha。 |
29-32 | PY_RELEASE_SERIAL (3.4.1a2 中的2 ,finally版本为零) |
因此3.4.1a2
是 hexversion 0x030401a2
。
所有给定的宏都在Include/patchlevel.h中定义。