Skip to main content
 首页 » 编程设计

python之如何制作其他软件包不再需要的 pip 卸载软件包

2025年05月04日10webabcd

例如,我可能已经安装了pkg1,它需要pkg2 和pkg3。我安装的其他软件包都不需要这两个。那么,在 pip uninstall pkg1 期间或之后,我怎样才能使 pip uninstall pkg2 和 pkg3?

请您参考如下方法:

pip 中没有简单的内置命令或标志来执行此操作,但在卸载 pkg1 之前,您可以确定依赖项:

$ pip show pkg1 | grep Requires 

您可以通过一些 bash fu 快速获得包要求的摘要:

$ for P in $(pip list | awk '{print $1}') ; do echo -n $P::' '; pip show $P | grep Requires ; done 

然后对于第一个命令显示的任何包(pkg2 和 pkg3),如果它们在第二个命令中没有显示为任何其他包的依赖项,您可以显式地pip uninstall那些作为好吧。

您还可以找到所有不依赖于任何其他包的包:

$ cat <(pip show $(pip list | awk '{print $1}') | grep Requires | sed -e s/Requires:// -e s/,//g | xargs -n 1) <(pip list | awk '{print $1}') | sort | uniq -u