如何在正确的python版本中安装numpy和matplotlib?

时间:2016-03-03 07:44:31

标签: python python-2.7 numpy matplotlib

我试图在正确的python版本中安装numpy,matplotlib和scipy。

最初我使用不同的python版本(3.2,2.7,2.6)进行测试。

我使用:How to uninstall Python 2.7 on a Mac OS X 10.6.4?

删除了所有这些版本

之后,我重新安装了Python 2.7.11。 当我尝试使用pip安装numpy,matplotlib和scipy时,我收到以下消息: 要求已经满足(使用--upgrade升级)......

在我的终端中,我尝试了以下内容:

$ which python
/Library/Frameworks/Python.framework/Versions/2.7/bin/python

$ python
Python 2.7.11 (v2.7.11:.....)
.....
>>> import numpy
ImportError: No module named numpy

$ /System/Library/Frameworks/Python.framework/Versions/2.7/bin/python
Python 2.7.10 (default, ......
.....
>>> import numpy
>>> numpy.__version__
'1.8.0rc1'

由于某种原因,这些软件包安装在2.7.10而不是2.7.11,这是我从python.org下载的版本。另外,我甚至不知道如何获得2.7.10版本。

如何解决此问题?

4 个答案:

答案 0 :(得分:3)

您还可以使用macports(https://www.macports.org/)安装不同版本的python,numpy和matplotlib。这真的很简单。

或者,你可以使用anaconda(https://www.continuum.io/downloads)来使用conda来实现你的目标。

答案 1 :(得分:3)

我建议使用virtualenv(使用virtualenvwrapper:https://virtualenvwrapper.readthedocs.org)。它很容易设置,将来处理多个Python安装时你绝对没有问题。

我与virtualenv合作多年,并为每个项目创建一个单独的虚拟环境,这个环境总是干净的,我从来不需要处理PATHPYTHONPATH或其他什么。

如果您遵循virtualenvwrapper安装指南,您可以通过以下方式为日常工作创建一个virtualenv:

mkvirtualenv common -p /Library/Frameworks/Python.framework/Versions/2.7/bin/python

这将创建virtualenv并自动激活它,因此您可以立即安装所需的软件包:

pip install matplotlib numpy scipy

每次您想要使用它时,请键入:

workon common

如上所述,您可以通过-p标志指定python可执行文件。每个virtualenv都将是一个全新的独立Python安装,你可以使用pip来安装你想要的任何东西(当然没有root访问权限)。

答案 2 :(得分:2)

这可能意味着您使用了另一个python版本的pip或easy_install。

安装模块时,请确保使用正确的pip版本。

例如,它可能是/usr/local/bin/pip2.7

答案 3 :(得分:0)

如果您从continuum.io安装Anaconda,您将可以访问已经过测试的许多软件包的版本,以使用您感兴趣的Python版本。这是他们发行版当前版本附带的list

您还可以访问conda,它是一个包和环境管理器。想想pip + virtualenv。

一旦你有了,你可以做到

conda create -n my_env python=3.6 numpy pandas

这会将Python 3.6以及numpy和pandas的所有依赖项安装到名为my_env的虚拟环境中。 Conda将确保您拥有可以协同工作的最新软件包。

要访问您的环境,您可以执行以下操作:

activate my_env

现在,您已在该环境中使用这些已安装的软件包运行Python。如果您需要更多套餐,可以conda install package_name。如果conda无法找到包裹,您仍然可以pip install package_name

请注意,作为额外的奖励,您可以通过英特尔MKL获得Numpy的优化和预编译版本。

(来自我之前回答的评论)

  

我推荐了去Anaconda路线的建议。   特别是如果你正在使用Numpy或依赖于Numpy的任何东西   (Pandas,Scipy,Sci-kit Learn)。 Continuum可以访问英特尔MKL   它为您提供了重要的优化和预编译的C代码   特定于您的操作系统。 docs.continuum.io/mkl-optimizations