我已经用python setup.py install安装了一个python包。

如何卸载?


当前回答

如果在重新安装包后仍然有应该删除的文件,请确保文件夹构建也被删除。因此,假设pkg是要删除的包:

rm -r $(python3 -c "import pkg; print(pkg.__path__[0] + '*' )") 
rm -rf build

为python3计算并删除包及其*。egg-info文件

其他回答

我曾经在过去的某个时候不小心在我的全局环境中运行了“python setup.py install”,卸载时遇到了很大的困难。这些解决方案并没有帮助。“pip uninstall”和“不能卸载'splunk-appinspect'”不搭。没有找到要卸载的文件。”“sudo pip uninstall”失败“无法卸载要求splunk-appinspect,未安装”。我尝试卸载pip,删除pip缓存,搜索我的硬盘驱动器的包,等等…

“pip show”最终引导我找到了解决方案,“Location:”指向一个目录,重命名该目录导致打包从pip的列表中删除。我重新命名了目录,它没有重新出现在pip的列表中,现在我可以在virtualenv中重新安装我的包。

使用bash读取命令来删除相关文件可能会更好,如下所示:

sudo python setup.py install --record files.txt
sudo bash -c "cat files.txt | xargs rm -rf"

现在python让你选择在安装过程中安装pip(我在Windows上,至少python在Windows上这样做!)。考虑到您在安装python时选择了安装pip(实际上不必选择,因为它是默认的),pip已经为您安装了。然后,在命令提示符中输入pip,您应该会看到出现帮助。你可以在那里找到必要的使用说明。例如,pip list显示了已安装包的列表。你可以使用

pip uninstall package_name

卸载你不再需要的软件包。在这里阅读更多(pip文档)。

我在我的PyCharm中运行了一次python setup.py install,它将所有的包安装到我的conda基础环境中。稍后当我想删除所有这些包时,pip卸载不起作用。我必须手动从/anaconda3/lib/python3.7/site-packages中删除它们:(

所以我不明白为什么他们使用setup.py而不是编写requirements.txt文件。需求文件可用于在虚拟环境中安装包,不会与系统python包混淆。

第一条答案有问题:

不会在mac上工作。 如果安装的文件包含空格或其他特殊 字符,xargs命令将失败,并删除任何 匹配单个单词的文件/目录。 rm -rf中的-r是不必要的,在最坏的情况下可能会删除你的东西 我不想。

相反,对于类unix:

sudo python setup.py install --record files.txt
# inspect files.txt to make sure it looks ok. Then:
tr '\n' '\0' < files.txt | xargs -0 sudo rm -f --

对于windows:

python setup.py bdist_wininst
dist/foo-1.0.win32.exe

卸载setup.py install还存在一些无法解决的问题,在典型情况下,这些问题不会困扰您。要获得更完整的答案,请参阅这个wiki页面:

https://ofswiki.org/wiki/Uninstalling_setup.py_install