我一直在尝试安装astropy,在安装结束时,我收到以下消息:
无法卸载Numpy。这是一个distutils安装的项目,因此我们不能准确地确定哪些文件属于它,这将导致只有部分卸载。
我尝试过:pip uninstall numpy
,然后我收到了相同的消息。我有Python 2.7。10在macOS High Sierra 13.10版中。5.
这并没有直接回答你的问题,但那是因为你问错了问题。
Astropy需要Python 3.5或3.6。试图让它与苹果预装的Python2.7协同工作是浪费时间。您可能可以通过这种方式获得旧版本,但不能使用astropy上的安装说明。org,即使您这样做,它也不会得到支持。
简单的解决方案是只安装最新的Anaconda 5。因为它内置了Astropy。
几乎同样简单的解决方案是从任何一个Python安装Python3.6。org binary installer或Homebrew,然后使用pip3
或更好的python3-m pip
安装所有内容,如Astropy安装页面所述。
不管怎样,在做任何其他事情之前,你都想重新开始。特别是,您不希望将pip
或任何其他脚本附加到苹果的Python 2.7上;它们只会引起混乱。假设您无法从头开始重新安装macOS,最好的方法是:
/Library/Python/2.7/site-pack
并删除除README
和Extras.pth
之外的所有内容。
/usr/local/bin
中查找指向该site-包
中任何内容的符号链接。(如果你对使用Unix不太了解,试试这个命令:ls-l /usr/local/bin|grep 2.7。)这里可能有pip
和pip 2.7
,可能没有其他内容。但是不管你这里有什么,删除它。现在,当您安装Python 3.6时,任何地方唯一名为pip
的东西将是Python 3.6的pip
。你仍然想使用pi3
或python3-m pip
,但是如果你搞砸了,不小心输入了pip
,它不会破坏任何东西。
此外,您应该强烈考虑使用虚拟环境。有关此方面的更多信息,请参阅Python包装管理机构的用户指南(或Anaconda文档,如果您这样做的话)。
我找到了一个简单的解决方案:
sudo -H pip install astropy --ignore-installed numpy
我也有这个问题,无法以一种干净的方式解决,但这是我所做的:
在Lib文件夹中搜索“numpy”以查找egg_信息文件(例如numpy-1.11.0.dev0_2329eae.egg信息)。
在我的例子中,这是Pip正在寻找的,以确定当前版本是否已经存在。我删了然后运行正常
pip install numpy
并安装了最新版本。
我不推荐这样做,因为我不明白它在引擎盖下做什么,它也不能正确卸载旧版本,这可能是麻烦的根源,但是如果你像我一样绝望,那么也许这是你的一个解决方案。