it-swarm.com.de

Entfernt das Deinstallieren eines Pakets mit "pip" auch die abhängigen Pakete?

Wenn Sie mit pip ein Paket installieren, werden alle erforderlichen Pakete mit installiert (Abhängigkeiten). Entfernt das Deinstallieren dieses Pakets auch die abhängigen Pakete?

88
Hossein

Nein, die Abhängigkeitspakete werden nicht deinstalliert:

$ pip install specloud
$ pip freeze

figleaf == 0,6,1
Nase == 1.1.2
Pinocchio == 0,3
specloud == 0.4.5 

$ pip uninstall specloud
$ pip freeze

figleaf == 0,6,1
Nase == 1.1.2
Pinocchio == 0,3

Wie Sie sehen können, sind alle Pakete noch vorhanden, nicht jedoch das Paket specloud.

52
BernardoFire

Sie können das Dienstprogramm pip-autoremove installieren und verwenden, um ein Paket plus nicht verwendete Abhängigkeiten zu entfernen.

# install pip-autoremove
pip install pip-autoremove
# remove "somepackage" plus its dependencies:
pip-autoremove somepackage -y
144
bwv549

ich habe erfolgreich Abhängigkeiten eines Pakets mit dieser bash-Zeile entfernt:

for dep in $(pip show somepackage | grep Requires | sed 's/Requires: //g; s/,//g') ; do pip uninstall -y $dep ; done

dies funktionierte auf pip 1.5.4

6
linibou

Möglicherweise haben Sie einen Versuch für https://github.com/cls1991/pef . Das Paket wird mit allen Abhängigkeiten entfernt.

0
cls1991