如何检查运行我脚本的Python版本?

1479 投票
27 回答
1812916 浏览
提问于 2025-04-15 12:44

我怎么查看正在运行我脚本的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'等)到这个元组中。不过要注意,通常最好是先检查某个功能是否存在,如果不存在,就想办法绕过这个问题(或者直接退出)。有时候在新版本中某些功能会被移除,取而代之的是其他功能。

撰写回答