it-swarm.com.de

Finden Sie heraus, welche Version des Pakets mit pip installiert ist

Kann man mit pip herausfinden, welche Version eines Pakets gerade installiert ist?

Ich weiß über pip install XYZ --upgrade Bescheid, aber ich frage mich, ob es etwas wie pip info XYZ gibt. Wenn nicht, was wäre der beste Weg, um herauszufinden, welche Version ich gerade verwende?.

522
Alexis

Ab pip 1.3 gibt es einen pip show Befehl.

$ pip show Jinja2
---
Name: Jinja2
Version: 2.7.3
Location: /path/to/virtualenv/lib/python2.7/site-packages
Requires: markupsafe

In älteren Versionen sollten pip freeze und grep die Arbeit gut machen.

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

Ich habe gerade eine Pull-Anfrage in Pip mit der Verbesserung geschickt, die Hugo Tavares sagte:

(Beispiel als Beispiel)

$ pip show specloud

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

Pip 1.3 hat jetzt auch einen list Befehl:

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

und mit --outdated als zusätzliches Argument erhalten Sie die aktuelle und die neueste Version der verwendeten Pakete:

$ 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)

Also mit der Antwort von AdamKG:

$ pip list --outdated | grep Jinja2
Jinja2 (Current: 2.6 Latest: 2.8)

Überprüfen Sie auch pip-tools: https://github.com/nvie/pip-tools

30
KevinS

Sie können auch yolk installieren und dann yolk -l ausführen, was auch eine schöne Ausgabe von Nice ergibt. Folgendes bekomme ich für meine kleine Virtualisierung:

(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 
16
Gustavo

Sie können den Befehl grep verwenden, um dies herauszufinden.

pip show <package_name>|grep Version

Beispiel:

pip show urllib3|grep Version

zeigt nur die Versionen.

Metadaten-Version: 2.0
Version: 1.12

7
Rajiv

Der einfachste Weg ist folgender:

import jinja2
print jinja2.__version__
5
user5730083

Unter Windows können Sie folgende Befehle ausgeben:

pip show setuptools | findstr "Version"

Ausgabe:

Version: 34.1.1
3
Quinn

In Frage ist nicht erwähnt, welches Betriebssystem der Benutzer verwendet (Windows/Linux/Mac)

Da gibt es ein paar Antworten, die auf Mac und Linux einwandfrei funktionieren.

Der folgende Befehl kann verwendet werden, wenn der Benutzer versucht, die Version eines python -Pakets unter Windows zu finden.

Verwenden Sie in PowerShell den folgenden Befehl:

pip list | findstr <PackageName>

Beispiel: - pip list | findstr requests

Ausgabe: requests 2.18.4

1
Ashwani Singh

Für Windows können Sie 

  1. Öffnen Sie cmd und geben Sie Python ein, drücken Sie die Eingabetaste. 

  2. geben Sie den Import ein und drücken Sie die Eingabetaste.

  3. geben Sie ._version__ ein und drücken Sie die Eingabetaste.

Wie Sie im Screenshot sehen, verwende ich diese Methode zur Überprüfung der Version des seriellen Moduls.

Image


0
joker2368

Es gibt auch ein Tool namens pip-check, das Ihnen einen schnellen Überblick über alle installierten Pakete und deren Aktualisierungsstatus gibt: 

 enter image description here

Ich habe es selbst nicht benutzt. stolperte einfach darüber und diese SO - Frage in schneller Folge, und da es nicht erwähnt wurde ...

0
Ola Tuvesson