OS X卸载已安装的distutils项目

时间:2016-01-18 14:34:59

标签: python macos

我在El Capitan,我想用pip安装numpy。但是我收到以下错误:

Detected a distutils installed project ('numpy') 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.

现有的numpy版本似乎是1.10.4,我尝试安装的版本是1.9.2,但我需要它。有没有办法用distutils卸载这个版本?或者至少有任何方式告诉pip安装了numpy吗?

3 个答案:

答案 0 :(得分:7)

由于没有关于已安装文件的元数据,我找到了手动删除文件的最简单方法。只需检索模块的目录(我称之为:Retrieving python module path),然后删除该文件夹以及随附的.egg-info文件。然后在没有--update标志的情况下安装所需的numpy版本。

答案 1 :(得分:2)

可能是你的物品是用anaconda安装的。对于你的numpy,试试:

conda uninstall numpy

我得到了同样的错误,这为我修好了。

答案 2 :(得分:0)

"正确"这样做的方法是创建一个virtualenv并安装你想要的NumPy版本。

$ virtualenv pandas
New python executable in /Users/gaius/pandas/bin/python
Installing setuptools, pip, wheel...done.
$ . pandas/bin/activate
(pandas) Dawn-Treader:~ gaius$ pip install pandas
Collecting pandas

如果你看一下你已经拥有的那个:

>>> import numpy
>>> numpy.__file__
'/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/numpy/__init__.pyc'

如果您手动执行此操作,则无法保证未来的OSX修补程序或升级不会触及您的更改并覆盖您的更改。