使用Python编写自定义函数fetch_package_version()获取软件包版本
发布时间:2023-12-24 21:40:46
下面是我为您编写的fetch_package_version()函数的Python代码,该函数可用于获取软件包的版本信息。同时,我也提供了一个使用示例来演示该函数的使用方法。
import subprocess
import re
def fetch_package_version(package_name):
try:
# 使用subprocess模块运行命令"pip show <package_name>"来获取软件包的详细信息
result = subprocess.check_output(['pip', 'show', package_name]).decode('utf-8')
# 使用正则表达式匹配版本号(Version)的行
version_line = re.search(r'Version: (.+)', result).group(0)
# 提取版本号
version = re.search(r'\d+\.\d+\.\d+', version_line).group(0)
return version
except (subprocess.CalledProcessError, AttributeError):
# 若软件包不存在或获取版本号失败,则返回None
return None
下面是该函数的使用示例:
# 获取软件包requests的版本号
version = fetch_package_version('requests')
# 输出版本号
if version:
print(f"The version of 'requests' package is: {version}")
else:
print("Failed to obtain the version of 'requests' package.")
请确保您已经安装了requests软件包,然后运行上述代码,将会输出类似以下内容的结果:
The version of 'requests' package is: 2.25.1
如果获取版本号失败,则会输出以下内容:
Failed to obtain the version of 'requests' package.
请确保您在运行上述代码时具备适当的权限,并已连接到Internet。此外,您还可以更换package_name参数的值来获取其他软件包的版本号。
希望这个代码对您有所帮助!
