API and ABI Versioning - Python 3.12.0a3 documentation 编辑
CPython exposes its version number in the following macros. Note that these correspond to the version code is built with, not necessarily the version used at run time.
See C API Stability for a discussion of API and ABI stability across versions.
- PY_MAJOR_VERSION
The
3
in3.4.1a2
.
- PY_MINOR_VERSION
The
4
in3.4.1a2
.
- PY_MICRO_VERSION
The
1
in3.4.1a2
.
- PY_RELEASE_LEVEL
The
a
in3.4.1a2
. This can be0xA
for alpha,0xB
for beta,0xC
for release candidate or0xF
for final.
- PY_RELEASE_SERIAL
The
2
in3.4.1a2
. Zero for final releases.
- PY_VERSION_HEX
The Python version number encoded in a single integer.
The underlying version information can be found by treating it as a 32 bit number in the following manner:
Bytes
Bits (big endian order)
Meaning
Value for
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
Thus
3.4.1a2
is hexversion0x030401a2
and3.10.0
is hexversion0x030a00f0
.Use this for numeric comparisons, e.g.
#if PY_VERSION_HEX >= ...
.This version is also available via the symbol
Py_Version
.
- const unsigned long Py_Version
- Part of the Stable ABI since version 3.11.
The Python runtime version number encoded in a single constant integer, with the same format as the
PY_VERSION_HEX
macro. This contains the Python version used at run time.New in version 3.11.
All the given macros are defined in Include/patchlevel.h.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论