In pip, dem Paketverwaltungssystem für Python, können Sie die Liste der installierten Pakete mit den Befehlen pip list und pip freeze überprüfen.
Mit der Pip-Liste ist es möglich, Pakete der neuesten Version (= aktuell), Pakete nicht der neuesten Version (= veraltet), Pakete, sterben keine Abhängigkeiten von anderen Paketen sind, ausgewählt und zu generieren. usw.
pip freeze ist nützlich zum Erstellen von requirements.txt, einer Konfigurationsdatei für die Masseninstallation von Paketen.
Dieser Artikel hat folgenden Inhalt.
- Unterschied zwischen Pip-Liste und Pip-Freeze
- Wählen Sie das Ausgabeformat:
--format
- Liste der aktualisierten Pakete:
-u, --uptodate
- Liste der veralteten Pakete:
-o, --outdated
- Pakete auflisten, die keine Abhängigkeiten von anderen Paketen sind:
--not-required
Dieser Artikel nicht alle Optionen; Weitere Notebooks finden Sie in der offiziellen Dokumentation.
Grundlegende Informationen zur Verwendung von Pip, z. B. zum Installieren, Aktualisieren und Deinstallieren von Paketen, finden Sie im following Artikel.
Die folgenden Beispiele laufen auf Pip 18.1.
Wenn Sie Anaconda verwenden, können Sie die Liste der installierten Pakete mit der Conda-Liste überprüfen.
Unterschied zwischen Pip-Liste und Pip-Freeze
Die Ausgabeergebnisse von Pip List und Pip Freeze in derselben Umgebung lauten wie folgt.
$ pip list
Package Version
---------- -------
future 0.16.0
pip 18.1
setuptools 39.2.0
six 1.11.0
wheel 0.31.1
$ pip freeze
future==0.16.0
six==1.11.0
Der Unterschied zwischen Pip-Liste und Pip-Freeze ist:
- Das Ausgabeformat
- Ob das Ergebnis Pakete für die Paketverwaltung enthält (z. B. Pip, Wheel, Konfigurationstools)
Das Ausgabeformat der Pip-Liste can Sich je nach Pip-Version und -Konfiguration unterscheiden, aber das Ausgabeformat für das Einfrieren von Pip ist == .
Das Format von pip freeze ist das Format von requirements.txt, einer Konfigurationsdatei für die Masseninstallation von Paketen. Wenn Sie pip freeze als Datei mit > Umleitung bauen und in einer anderen Umgebung verwenden, können Sie Pakete gleichzeitig installieren.
$ pip freeze > requirements.txt
$ pip install -r requirements.txt
pip freeze generiert weder pip selbst noch Pakete für die Paketverwaltung, wie die Konfigurationstools und das Rad. Diese Pakete sind nicht erforderlich, um Ihre Umgebung mithilfe der oben genannten TXT-Anforderungen zu migrieren.
Beachten Sie, dass Pakete auch als Pip generiert werden, wenn Sie die Option –all zum Einfrieren von Pip hinzufügen.
$ pip freeze --all
future==0.16.0
pip==18.1
setuptools==39.2.0
six==1.11.0
wheel==0.31.1
Wie unten erklärt, kann die Pip-Liste verwendet werden, um Pakete der neuesten Version (= aktuell) auszuwählen und zu generieren, Pakete nicht der neuesten Version (= geplant), Pakete, sterben keine Abhängigkeiten von anderen Paketen sind usw.
Sie müssen auch Pip-Liste und Pip-Freeze wie folgt verwenden:
- Wenn SIE Eine Liste von Paketen mit mehreren Bedingungen überprüfen möchten, verwenden SIE sterben Pip-Liste.
- Wenn Sie eine requirements.txt-Datei erstellen möchten, verwenden Sie pip freeze.
Wählen Sie das Ausgabeformat:--format
In der Pip-Liste können Sie das Ausgabeformat mit der Option –format auswählen.
$ pip list --format
kann Spalten, Freeze oder JSON sein.
In Pip 18.1 sind die Spalten die Standardeinstellung. In der Version 18.1 konnten SIE das Legacy-Format angeben, aber nicht.
$ pip list --format columns
Package Version
---------- -------
future 0.16.0
pip 18.1
setuptools 39.2.0
six 1.11.0
wheel 0.31.1
$ pip list --format freeze
future==0.16.0
pip==18.1
setuptools==39.2.0
six==1.11.0
wheel==0.31.1
$ pip list --format json
{"version": "0.16.0", "name": "future"}, {"version": "18.1", "name": "pip"}, {"version": "39.2.0", "name": "setuptools"}, {"version": "1.11.0", "name": "six"}, {"version": "0.31.1", "name": "wheel"}
Liste der aktualisierten Pakete:-u, --uptodate
Pip-Liste mit -u oder –uptodate gibt nur Pakete aus, sterben auf sterben neueste Version aktualisiert wurden.
$ pip list -u
Package Version
------- -------
future 0.16.0
pip 18.1
six 1.11.0
Liste der veralteten Pakete:-o, --outdated
Pip-Liste mit -oo –outdated generiert nur aktuelle Pakete, die nicht sterben neueste Version sind.
Wenn das Ausgabeformat Columns oder JSON ist, werden die aktuell installierte Version und die neueste Version zusammen angezeigt.
$ pip list -o
Package Version Latest Type
---------- ------- ------ -----
setuptools 39.2.0 40.4.3 wheel
wheel 0.31.1 0.32.1 wheel
$ pip list -o --format json
{"latest_filetype": "wheel", "version": "39.2.0", "name": "setuptools", "latest_version": "40.4.3"}, {"latest_filetype": "wheel", "version": "0.31.1", "name": "wheel", "latest_version": "0.32.1"}
Wenn das Ausgabeformat eingefroren IST, WIRD nur die aktuell installierte Version ausgegeben.
$ pip list -o --format freeze
setuptools==39.2.0
wheel==0.31.1
Pakete auflisten, die keine Abhängigkeiten von anderen Paketen sind:--not-required
Pip-Liste mit –not-required generiert nur Pakete, die nicht von anderen installierten Paketen abhängen.
$ pip list --not-required
Package Version
---------- -------
future 0.16.0
pip 18.1
setuptools 39.2.0
six 1.11.0
wheel 0.31.1
Das Ausgeben von Paketen nach Pip-Liste –not-required unterbricht nicht die Abhängigkeiten anderer Pakete, selbst wenn sie deinstalliert werden. Dies ist nützlich, um Pakete zu finden, die in einer Umgebung deinstalliert werden können, in der viele Pakete installiert sind.
Beachten Sie, dass nur Abhängigkeiten überprüft werden und Abhängigkeiten, sterben als externe Befehle used Werden, wie z. B. Pip, ebenfalls aufgeführt sind.