在运行时在python中获取更新的包列表

时间:2015-08-28 06:22:54

标签: python python-2.7 pip

我已经通过执行以下命令在python中使用'pip'安装了一个新包。

import pip
pip.main(['install','--ignore-installed','setuptools'])

我的要求是在运行时获取更新的包列表,是否可以获取它?

请找到我尝试的选项/命令。这些命令显示前面介绍的相同的包列表。

import imp
imp.reload(pip.utils.pkg_resources)
["%s==%s" % (i.key, i.version) for i in pip.utils.pkg_resources.working_set] 

提前致谢:)

2 个答案:

答案 0 :(得分:0)

您可以执行此操作以获取当前版本的软件包:

pip install --no-deps --no-install requests -v

Downloading/unpacking requests Using version 2.7.0 (newest of versions: 2.7.0, 2.7.0, 2.6.2, 2.6.2, 2.6.1, 2.6.1, 2.6.0, 2.6.0, 2.5.3, 2.5.3, 2.5.2, 2.5.2, 2.5.1, 2.5.1, 2.5.0, 2.5.0, 2.4.3, 2.4.3, 2.4.2, 2.4.2, 2.4.1, 2.4.1, 2.4.0, 2.4.0, 2.3.0, 2.3.0, 2.2.1, 2.2.1, 2.2.0, 2.2.0, 2.1.0, 2.1.0, 2.0.1, 2.0.1, 2.0.0, 2.0.0, 1.2.3, 1.2.2, 1.2.1, 1.2.0, 1.1.0, 1.0.4, 1.0.3, 1.0.2, 1.0.1, 1.0.0, 0.14.2, 0.14.1, 0.14.0, 0.13.9, 0.13.8, 0.13.7, 0.13.6, 0.13.5, 0.13.4, 0.13.3, 0.13.2, 0.13.1, 0.13.0, 0.12.1, 0.12.0, 0.11.2, 0.11.1, 0.10.8, 0.10.7, 0.10.6, 0.10.4, 0.10.3, 0.10.2, 0.10.1, 0.10.0, 0.9.3, 0.9.2, 0.9.1, 0.9.0, 0.8.9, 0.8.8, 0.8.7, 0.8.6, 0.8.5, 0.8.4, 0.8.3, 0.8.2, 0.8.1, 0.8.0, 0.7.6, 0.7.5, 0.7.4, 0.7.3, 0.7.2, 0.7.1, 0.7.0, 0.6.6, 0.6.5, 0.6.4, 0.6.3, 0.6.2, 0.6.1, 0.6.0, 0.5.1, 0.5.0, 0.4.1, 0.4.0, 0.3.4, 0.3.3, 0.3.2, 0.3.1, 0.3.0, 0.2.4, 0.2.3, 0.2.2, 0.2.1, 0.2.0)

此输出提供有关当前版本的信息,因此这意味着您可以将版本保存在脚本中并稍后执行此命令。如果版本将更改,您可以安装新包。

答案 1 :(得分:0)

我使用了最新版本的pip(7.1.2)来执行上述命令并且有效。现在,我能够在python模块中动态获取列表包:)