如何在运行时检查Python模块的版本
Python每个最新版本都引入了新功能。因此,为了检查当前正在使用的版本,我们需要一种获取它们的方法。如果用户在没有正确版本的情况下实现功能,可能会出现随机问题。
我们可以使用几种不同的方法来检查版本。下面讨论了这些方法。
使用Sys模块
使用sys模块,我们可以检索当前的Python模块版本。可以使用以下代码行来实现。
import sys
print(sys.version)
输出
所得到的输出如下所示。
3.10.6 (main, Mar 10 2023, 10:55:28) [GCC 11.3.0]
示例
使用sys模块来获取当前Python模块的版本
print(sys.version_info)
输出
输出结果如下。
sys.version_info(major=3, minor=8, micro=8, releaselevel='final', serial=0)
示例
使用sys模块查找Python模块的当前版本。
import sys
print(sys.version_info.major)
print(sys.version_info.minor)
print(sys.version_info.micro)
输出
输出结果如下。
3
10
6
使用Platform模块
使用Platform模块,我们可以获取当前Python模块的版本。
import platform
print(platform.python_version())
print("Current Python version is: "+platform.python_version())
输出
3.8.8
Current Python version is: 3.8.6
示例:
在这个示例中,我们将看到如何单独打印模块的当前版本,而不是作为单个输入。下面可以看到它的工作原理。
import platform
print(platform.python_version_tuple()[0])
print(platform.python_version_tuple()[1])
print(platform.python_version_tuple()[2])
输出
生成的输出如下:
3
8
8
pkg_resources模块
使用pkg_resources模块在运行时获取模块的版本号。从PyPI安装的任何东西至少都应该有一个版本号。
import pkg_resources
pkg_resources.get_distribution("blogofile").version
请注意,包名必须是PyPI条目的名称。例如 “pkg_resources.get_distribution(‘MySQLdb’).version” 不起作用,但是 “pkg_resources.get_distribution(‘mysql-python’).version” 可以。