使用pip,是否有可能找出当前安装的软件包的哪个版本?
我知道pip安装XYZ -升级,但我想知道是否有类似pip信息XYZ的东西。如果不是什么最好的方式来告诉我目前使用的版本。
使用pip,是否有可能找出当前安装的软件包的哪个版本?
我知道pip安装XYZ -升级,但我想知道是否有类似pip信息XYZ的东西。如果不是什么最好的方式来告诉我目前使用的版本。
当前回答
在pip 1.3中,有一个pip show命令。
$ pip show Jinja2
---
Name: Jinja2
Version: 2.7.3
Location: /path/to/virtualenv/lib/python2.7/site-packages
Requires: markupsafe
在旧版本中,pip freeze和grep可以很好地完成这项工作。
$ pip freeze | grep Jinja2
Jinja2==2.7.3
其他回答
使用——outdated作为额外参数,你将得到你正在使用的包的当前版本和最新版本:
$ pip list --outdated
distribute (Current: 0.6.34 Latest: 0.7.3)
django-bootstrap3 (Current: 1.1.0 Latest: 4.3.0)
Django (Current: 1.5.4 Latest: 1.6.4)
Jinja2 (Current: 2.6 Latest: 2.8)
所以结合AdamKG的回答:
$ pip list --outdated | grep Jinja2
Jinja2 (Current: 2.6 Latest: 2.8)
也可以查看pip-tools: https://github.com/nvie/pip-tools
最简单的方法是:
import jinja2
print jinja2.__version__
这里没有提到用户使用的是哪种操作系统(Windows/Linux/Mac)
因为有几个答案将完美地工作在Mac和Linux。
如果用户试图在windows上查找python包的版本,可以使用下面的命令。
在PowerShell中使用以下命令:
皮普名单| findstr < PackageName >
示例:- pip list | findstr requests
输出:请求2.18.4
对于Windows,你可以
打开CMD,输入python,按enter。 输入导入并按enter。 输入._version__并按enter。
正如你在这里的屏幕截图中看到的,我使用这种方法来检查串行模块的版本。
在windows上,你可以发出如下命令:
pip show setuptools | findstr "Version"
输出:
Version: 34.1.1