API 和 ABI 版本控制 — Python 文档
来自菜鸟教程
Python/docs/3.10/c-api/apiabiversion
API 和 ABI 版本控制
CPython 在以下宏中公开其版本号。 请注意,这些对应的版本代码是 built with,不一定是 运行时 使用的版本。
有关跨版本的 API 和 ABI 稳定性的讨论,请参阅 C API 稳定性 。
- PY_MAJOR_VERSION
3.4.1a2
中的3
。
- PY_MINOR_VERSION
3.4.1a2
中的4
。
- PY_MICRO_VERSION
3.4.1a2
中的1
。
- PY_RELEASE_LEVEL
3.4.1a2
中的a
。 这可以是 alpha 的0xA
、beta 的0xB
、候选版本的0xC
或最终版的0xF
。
- PY_RELEASE_SERIAL
3.4.1a2
中的2
。 最终版本为零。
- PY_VERSION_HEX
以单个整数编码的 Python 版本号。
可以通过以下方式将其视为 32 位数字来找到底层版本信息:
字节
位(大端顺序)
意义
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
因此,
3.4.1a2
是十六进制版本0x030401a2
,而3.10.0
是十六进制版本0x030a00f0
。
所有给定的宏都在 :source:`Include/patchlevel.h` 中定义。