946

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

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

4

16 に答える 16

1358

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
于 2012-04-18T17:53:51.653 に答える
76

Hugo Tavaresが言った拡張機能を備えたpipでプルリクエストを送信しました:

(例としてスペクラウド)

$ pip show specloud

Package: specloud
Version: 0.4.4
Requires:
nose
figleaf
pinocchio
于 2012-04-24T14:28:43.053 に答える
52

Pip 1.3 にはlistコマンドも追加されました。

$ pip list
argparse (1.2.1)
pip (1.5.1)
setuptools (2.1)
wsgiref (0.1.2)
于 2014-01-23T10:36:22.710 に答える
17

インストールyolkしてから実行することもできyolk -lます。これにより、優れた出力が得られます。私の小さなvirtualenvで得られるものは次のとおりです。

(venv)CWD> /space/vhosts/pyramid.xcode.com/venv/build/unittest 
project@pyramid 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 
于 2012-04-18T18:30:37.467 に答える
13

grep コマンドを使用して調べることができます。

pip show <package_name>|grep Version

例:

pip show urllib3|grep Version

バージョンのみを表示します。

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

于 2016-01-06T18:52:46.403 に答える
9

pip-checkインストールされているすべてのパッケージとその更新ステータスの概要をすばやく確認できる、というツールもあります。

ここに画像の説明を入力

自分で使用したことはありません。それとこのSOの質問が立て続けに出くわしましたが、言及されていなかったので...

于 2019-02-19T03:11:33.967 に答える
4

pip list出力を としてフォーマットするように指示することもできますjson。バージョンを解析する方が安全な方法かもしれません。

pip list --no-index --format=json | \
  jq -r '.[] | select(.name=="Jinja2").version'
# 2.10.1
于 2021-03-13T15:34:48.230 に答える
0

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

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

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

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

pip list | findstr <PackageName>

例:-pip list | findstr requests

出力:requests 2.18.4

于 2019-07-14T12:32:17.677 に答える