当您使用pip安装一个包时,所有必需的包也将随它一起安装(依赖项)。卸载该包是否也会删除依赖的包?
当前回答
我已经找到了解决方案,尽管对一些人来说可能有点困难。
第一步(对于python3和linux):
pip3 install pip-autoremove
步骤2:
cd /home/usernamegoeshere/.local/bin/
第三步:
gedit /home/usernamegoeshere/.local/lib/python3.8/site-packages/pip_autoremove.py
并将所有pip(s)更改为pip3 第四步:
./pip-autoremove packagenamegoeshere
至少,这对我有用……
其他回答
你可以试试https://github.com/cls1991/pef。 它将删除包及其所有依赖项。
我已经成功地删除了一个包的依赖使用这个bash行:
for dep in $(pip show somepackage | grep Requires | sed 's/Requires: //g; s/,//g') ; do pip uninstall -y $dep ; done
这在PIP 1.5.4上有效
您可以安装并使用pip-autoremove实用程序来删除包和未使用的依赖项。
# install pip-autoremove
pip install pip-autoremove
# remove "somepackage" plus its dependencies:
pip-autoremove somepackage -y
我已经找到了解决方案,尽管对一些人来说可能有点困难。
第一步(对于python3和linux):
pip3 install pip-autoremove
步骤2:
cd /home/usernamegoeshere/.local/bin/
第三步:
gedit /home/usernamegoeshere/.local/lib/python3.8/site-packages/pip_autoremove.py
并将所有pip(s)更改为pip3 第四步:
./pip-autoremove packagenamegoeshere
至少,这对我有用……
不,它不会卸载依赖包。它只删除指定的包:
$ pip install specloud
$ pip freeze # all the packages here are dependencies of specloud package
figleaf = = 0。6。 鼻= = 1。1。2 匹诺曹= 0。3 5 specloud = = 0。4。
$ pip uninstall specloud
$ pip freeze
figleaf = = 0。6。 鼻= = 1。1。2 匹诺曹= 0。3
正如你所看到的,这些包是来自云计算的依赖项,它们仍然存在,但不是云计算包本身。
如下面所述,您可以安装并使用pip-autoremove实用程序来删除包和未使用的依赖项。