Python pip如何用前导破折号删除安装不正确的软件包-pkgname“;

Python pip如何用前导破折号删除安装不正确的软件包-pkgname“;,python,pip,Python,Pip,键入pip freeze我注意到列表顶部有以下警告: 警告:无法分析要求:-atplotlib 因此,我使用:pip list 事实上,以下内容被视为一揽子计划: Package Version --------------- ------- -atplotlib 3.0.3 我想我在安装/升级matplotlib时可能有一个输入错误,这导致安装了前面提到的“包” 不幸的是,我无法删除它作为打字 pip uninstall -atplotlib

键入
pip freeze
我注意到列表顶部有以下警告:

警告:无法分析要求:-atplotlib

因此,我使用:
pip list
事实上,以下内容被视为一揽子计划:

    Package         Version
    --------------- -------
    -atplotlib      3.0.3
我想我在安装/升级matplotlib时可能有一个输入错误,这导致安装了前面提到的“包”

不幸的是,我无法删除它作为打字

pip uninstall -atplotlib
作为命令读取并返回以下错误:
无此类选项:-a
。 有没有关于如何进行的建议

编辑 我找到了以下文件夹:

C:\Users\name\Anaconda3\Lib\site packages\~atplotlib

C:\Users\name\Anaconda3\Lib\site packages\~atplotlib-3.0.3-py3.7.egg-info

删除它们是否安全(且足够?

编辑:根据,由劳伦斯于年提供

站点包
目录中查找并删除名称不正确的文件夹可以解决此问题

如果它没有按照下面的说明继续清洁

通过搜索损坏包的名称(不带前导破折号),我可以找到以下两个文件夹:

C:\Users\name\Anaconda3\Lib\site packages~atplotlib

C:\Users\name\Anaconda3\Lib\site packages~atplotlib-3.0.3-py3.7.egg-info

以下是Hoefling的评论(见下文)

我检查了egg info目录下的
SOURCES.txt
文件
%dir%/~atplotlib-3.0.3-py3.7.egg info/SOURCES.txt
。检查了此文件中的路径列表,并确保列出的所有路径均未包含
~
。然后我将目录
~atplotlib-3.0.3-py3.7.egg info
重命名为
atplotlib-3.0.3-py3.7.egg info
(删除了tilde
~
)。
最后,我运行了
pip卸载atplotlib
,提示如下:

卸载atplotlib-3.0.3:
将删除:
C:\Users\name\Anaconda3\Lib\site packages\atplotlib-3.0.3-py3.7.egg-info C:\Users\name\Anaconda3\Lib\site packages\matplotlib
C:\Users\name\Anaconda3\Lib\site packages\pylab.py


继续删除解决了问题(警告消失,包不再在包列表上。

站点包
目录中删除有问题的文件夹是安全的

更多信息如下():

卸载软件包时,pip现在将其重命名为一个名称 这是无法导入的,一旦确认所有 将成功(包括安装新版本,如果它正在执行 升级),然后才会删除这些文件夹。如果出现故障, 它将它们重新命名

以前,它会将整个内容复制到另一个目录, 和另一个驱动器,然后在需要时将它们复制回来。 因此,这一变化是一个显著的性能改进,尤其是 对于包含大量文件的包

您在这里看到的是由于某种原因删除失败- 也许pip崩溃了?-所以目录没有被删除。我 我想皮普完全忽略了他们,但也许还有别的原因 自从我测试过之后,有什么变化

这些目录可以安全删除


在删除
~
字符作为文件名的开头后,我必须执行
rm-rf atplotlib

$ pip freeze | grep atplotlib
$ cd /home/user/.local/lib/python3.8/site-packages
$ mv \~ atplotlib atplotlib
$ pip freeze | grep atplotlib
atplotlib ==3.0.3
$  pip uninstall atplotlib
WARNING: Skipping atplotlib as it is not installed.
$ rm -rf atplotlib

什么操作系统让你吃了苦头?试试
pip卸载---atplotlib
@SIGSTACKFAULT不起作用。我得到:
错误:无效要求:'-atplotlib'
@PaulaThomas Windows 10你试过用单引号括起来吗?问题是你没有通过这样做删除所有已安装的文件,而且你已经删除了
egg info
dir,您没有关于已安装文件的信息(文件
~atplotlib-3.0.3-py3.7.egg info/SOURCES.txt
)。您应该查看此文件中的路径列表,确保其中列出的所有路径不包含
~
,并与磁盘上的路径匹配(必要时重命名)。然后重命名唯一的目录
~atplotlib-3.0.3-py3.7.egg info
,以删除波浪线(例如
atplotlib-3.0.3-py3.7.egg info
),然后
pip卸载atplotlib
。查看
matplotlib
安装,您应该在
C:\Users\name\Anaconda3\Lib\site包
dir中有
mpl\u工具包
dir和
pylab.py
模块。删除这些文件夹将完成清理。@hoefling您好,谢谢您的指导。如果这有助于清理过程,我可以轻松还原这两个文件夹(我备份了它们)@从文件夹中删除
~
并运行
pip uninstall atplotlib
我得到以下信息:
卸载atplotlib-3.0.3:将删除:C:\Users\name\Anaconda3\Lib\site packages\atplotlib-3.0.3-py3.7.egg-info,C:\Users\name\Anaconda3\Lib\site packages\matplotlib,C:\Users\name\Anaconda3\Lib\site packages\pylab。py
我应该继续吗?在我这方面,我必须删除该文件夹,而不是执行
pip uninstall
链接。如何删除所有有问题的文件夹,它们位于何处?在windows上,检查C:\Anaconda3\Lib\site软件包