【问题标题】:How to install numpy and matplotlib in the right python version?如何在正确的 python 版本中安装 numpy 和 matplotlib?
【发布时间】:2016-06-16 09:59:57
【问题描述】:

我正在尝试在正确的 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是怎么弄到的。

我该如何解决这个问题?

【问题讨论】:

  • 您还应该添加您用于安装numpy的确切语句,并使用which -a <tool-name>检查您用于安装的工具(例如pip或setuptools)的路径
  • $ which -a pip/usr/local/bin/pip安装命令:ruby -e "$(curl -fsSkL raw.github.com/mxcl/homebrew/go)"export PATH=/usr/local/bin:/usr/local/share/python:$PATH$ easy_install pippip install numpypip install numpypip install gccpip install scipybrew install pkg-config@9876543刚刚解决的问题以下:我打开我的 2.7.11 python >>> import sys >>> sys.path.insert(0, '/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python') 和那个修复!非常感谢您的帮助!

标签: python python-2.7 numpy matplotlib


【解决方案1】:

如果您从 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 的东西 (熊猫、Scipy、Sci-kit Learn)。 Continuum 可以访问英特尔 MKL 它为您提供了显着的优化和预编译的 C 代码 特定于您的操作系统。 docs.continuum.io/mkl-optimizations

【讨论】:

    【解决方案2】:

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

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

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

    【讨论】:

    • 当我在终端输入which pip 时,我得到:/usr/local/bin/pip
    • 看看这个目录下有没有其他pip。
    • /user/local/bin/我找到了pip、pip2和pip2.7
    • 好的,这很可能是您的问题。运行 /user/local/bin/pip2.7 来安装你的包。这应该适合你。
    【解决方案3】:

    我推荐使用 virtualenv(带有 virtualenvwrapper:https://virtualenvwrapper.readthedocs.org)。它非常容易设置,并且在您以后处理多个 Python 安装时绝对不会有任何问题。

    我多年来一直使用 virtualenv,并为每个项目创建一个单独的虚拟环境,它总是很干净,我永远不必处理 PATHPYTHONPATH 或其他任何东西。

    如果您遵循 virtualenvwrapper 安装指南,您可以通过以下方式简单地创建一个用于日常工作的虚拟环境:

    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 访问权限)。

    【讨论】:

    • 非常感谢!我会试试看的!
    【解决方案4】:

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

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

    【讨论】:

    • 我推荐 Anaconda,因为它会同时安装所有相关的包,例如 numpy、pandas 等以及兼容的包。
    • 我赞成去 Anaconda 路线的建议。特别是如果您使用 Numpy 或任何依赖于 Numpy(Pandas、Scipy、Sci-kit Learn)的东西。 Continuum 可以访问英特尔 MKL,它为您提供显着优化和特定于您的操作系统的预编译 C 代码。 docs.continuum.io/mkl-optimizations
    猜你喜欢
    • 2023-03-05
    • 2012-03-15
    • 1970-01-01
    • 2017-11-27
    • 2015-03-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-04-11
    相关资源
    最近更新 更多