webdevqa.jp.net

どこのバージョンのパッケージがpipでインストールされているかを調べる

Pipを使用して、どのバージョンのパッケージが現在インストールされているかを把握することは可能ですか?

私はpip install XYZ --upgradeについて知っていますが、pip info XYZのようなものがあるかどうか疑問に思います。そうでない場合、私が現在使用しているバージョンを確認するための最良の方法は何でしょう。

560
Alexis

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 freezegrepがうまく働きます。

$ pip freeze | grep Jinja2
Jinja2==2.7.3
790
AdamKG

私は、Hugo Tavares氏が述べた機能強化とともに、pipでプルリクエストを送ったところです。

(例としてspecloud)

$ pip show specloud

Package: specloud
Version: 0.4.4
Requires:
nose
figleaf
pinocchio
61
BernardoFire

Pip 1.3には list コマンドもあります。

$ pip list
argparse (1.2.1)
pip (1.5.1)
setuptools (2.1)
wsgiref (0.1.2)
39
RickyA

追加引数として--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

32
KevinS

yolkをインストールしてからyolk -lを実行すると、Niceの出力も得られます。これは私が私の小さなvirtualenvのために得るものです:

(venv)CWD> /space/vhosts/pyramid.xcode.com/venv/build/unittest 
[email protected] 43> yolk -l
Chameleon       - 2.8.2        - active 
Jinja2          - 2.6          - active 
Mako            - 0.7.0        - active 
MarkupSafe      - 0.15         - active 
PasteDeploy     - 1.5.0        - active 
Pygments        - 1.5          - active 
Python          - 2.7.3        - active development (/usr/lib/python2.7/lib-dynload)
SQLAlchemy      - 0.7.6        - active 
WebOb           - 1.2b3        - active 
account         - 0.0          - active development (/space/vhosts/pyramid.xcode.com/project/account)
distribute      - 0.6.19       - active 
egenix-mx-base  - 3.2.3        - active 
ipython         - 0.12         - active 
logilab-astng   - 0.23.1       - active 
logilab-common  - 0.57.1       - active 
nose            - 1.1.2        - active 
pbkdf2          - 1.3          - active 
pip             - 1.0.2        - active 
pyScss          - 1.1.3        - active 
pycrypto        - 2.5          - active 
pylint          - 0.25.1       - active 
pyramid-debugtoolbar - 1.0.1        - active 
pyramid-tm      - 0.4          - active 
pyramid         - 1.3          - active 
repoze.lru      - 0.5          - active 
simplejson      - 2.5.0        - active 
transaction     - 1.2.0        - active 
translationstring - 1.1          - active 
venusian        - 1.0a3        - active 
waitress        - 0.8.1        - active 
wsgiref         - 0.1.2        - active development (/usr/lib/python2.7)
yolk            - 0.4.3        - active 
zope.deprecation - 3.5.1        - active 
zope.interface  - 3.8.0        - active 
zope.sqlalchemy - 0.7          - active 
17
Gustavo

Grepコマンドを使って調べることができます。

pip show <package_name>|grep Version

例:

pip show urllib3|grep Version

バージョンのみが表示されます。

メタデータバージョン:2.0
バージョン:1.12

8
Rajiv

最も簡単な方法はこれです:

import jinja2
print jinja2.__version__
6
user5730083

Windowsでは、次のようなコマンドを発行できます。

pip show setuptools | findstr "Version"

出力:

Version: 34.1.1
3
Quinn

質問では、どのOSユーザーが使用しているかは言及されていません(Windows/Linux/Mac)

MacとLinuxで問題なく動作する回答がいくつかあります。

以下のコマンドは、ユーザーがWindowsでpythonパッケージのバージョンを見つけようとしている場合に使用できます。

PowerShellでは、以下のコマンドを使用します。

pip list | findstr <PackageName>

例:-pip list | findstr requests

出力:requests 2.18.4

1
Ashwani Singh

Windowsの場合は

  1. cmdを開いてpythonと入力し、Enterキーを押します。

  2. インポートを入力してEnterを押します。

  3. ._version__と入力してEnterキーを押します。

あなたがここにスクリーンショットで見ることができるように、私はシリアルモジュールのバージョンをチェックするためにこの方法を使っています。

Image


1
joker2368

pip-checkと呼ばれる というツールもあります。これはインストールされているすべてのパッケージとその更新状況の概要を表示します。

enter image description here

自分では使っていません。ちょっとそれにつまずいた、そしてこのSO質問はすぐに続き、そしてそれは言及されなかったので...

1
Ola Tuvesson