当我运行sudo pip install --upgrade six
时,我遇到了以下问题:
2016-01-20 18:29:48|optim $ sudo pip install --upgrade six
Collecting six
Downloading six-1.10.0-py2.py3-none-any.whl
Installing collected packages: six
Found existing installation: six 1.4.1
Detected a distutils installed project ('six') which we cannot uninstall. The metadata provided by distutils does not contain a list of files which have been installed, so pip does not know which files to uninstall.
我有Python 2.7,我在Mac OS X 10.11.1上。
如何成功升级?
(还有其他类型的相关帖子,但他们实际上并没有解决同样的错误。)
编辑:
我被告知我可以通过从six
删除内容来手动删除site-packages
。这些是site-packages
中以six
开头的文件:
six-1.10.0.dist-info
,six-1.9.0.dist-info
,six.py
,six.py
。
它们都可以正确/安全地移除吗?
EDIT2:
我决定从site-packages
中移除这些内容,但事实证明,现有的six
无法安装
/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python
。
在那里,我看到了文件:
six-1.4.1-py2.7.egg-info
,six.py
,six.pyc
但对rm
执行sudo
(偶数为Operation not permitted
会给PL/pgSQL
。
那么现在的问题是,我如何删除那些那些文件,给出它们的位置?
答案 0 :(得分:4)
看起来像是第8点中的已知错误,现在正在修复(请参阅Change 260150 )
在此问题得到解决之前,您可以降级到pip 7.1.2
答案 1 :(得分:1)
我也有一些安装模块的问题,我有时会发现它只是重新开始。在这种情况下,看起来你已经拥有了一些'六'模块,但没有正确设置,所以如果sudo pip uninstall six产生相同的东西,进入你的目录并手动删除任何与六个相关的东西,然后尝试安装它。您可能需要在存储模块的地方进行一些挖掘(或者已经存储,因为pip可以在不同的位置找到它们。)