如何检查运行我脚本的Python版本?
我怎么查看正在运行我脚本的Python解释器版本?
如果你想确切知道正在使用哪个解释器,比如为了调试Pip安装问题,或者检查当前是否有虚拟环境在运行,可以参考这个链接:查找Python解释器的完整路径(Python可执行文件)?
27 个回答
120
使用标准库中的 platform
模块里的 python_version
方法:
from platform import python_version
print(python_version())
# 3.9.2
424
从命令行输入(注意大写的'V'):
python -V
这个内容可以在'man python'里找到详细说明。
从IPython控制台输入:
!python -V
1685
这些信息可以在sys.version
字符串中找到,属于sys
模块的一部分:
>>> import sys
人类可读的格式:
>>> print(sys.version) # parentheses necessary in python 3.
2.5.2 (r252:60911, Jul 31 2008, 17:28:52)
[GCC 4.2.3 (Ubuntu 4.2.3-2ubuntu7)]
如果你需要进一步处理,可以使用sys.version_info
或者sys.hexversion
:
>>> sys.version_info
(2, 5, 2, 'final', 0)
# or
>>> sys.hexversion
34014192
为了确保你的脚本在运行时满足Python解释器的最低版本要求,可以在代码中添加以下内容:
assert sys.version_info >= (2, 5)
这段代码会比较主要版本和次要版本的信息。你可以根据需要添加微版本(比如0
, 1
等)和发布级别(比如'alpha'
, 'final'
等)到这个元组中。不过要注意,通常最好是先检查某个功能是否存在,如果不存在,就想办法绕过这个问题(或者直接退出)。有时候在新版本中某些功能会被移除,取而代之的是其他功能。