现在在Python 2.7中安装NumPy + SciPy失败,并显示“ RuntimeError:Python版本> = 3.5必需”

时间:2019-08-30 23:14:47

标签: python-2.7 numpy scipy pip

从这样的源代码安装numpy和scipy(例如,在新的Python 2.7 pyenv virtualenv中)

pip install numpy==1.14.6 scipy==1.0.1 --no-binary numpy,scipy

让他们的安装程序使用指向我的openblas安装的~/.numpy-site.cfg文件。

这曾经起作用。现在,它产生一个长堆栈跟踪,结尾为:

      File "/usr/local/var/pyenv/versions/2.7.16/envs/issue/lib/python2.7/site-packages/setuptools/sandbox.py", line 45, in _execfile
        exec(code, globals, locals)
      File "/var/folders/_b/q30qg_l50b5gvqd8y4_wb9h00000gn/T/easy_install-o9MJ5E/numpy-1.17.1/setup.py", line 31, in <module>
        if sys.version_info[0] < 3:
    RuntimeError: Python version >= 3.5 required.
    ----------------------------------------
ERROR: Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output.
问:发生了什么变化?
问:为什么在Python 2.7安装中会显示Python version >= 3.5 required.
问:如何解决?

1 个答案:

答案 0 :(得分:2)

scipy 1.0.1安装程序需要numpy作为先决条件,但是多个安装程序一起工作最终会获得numpy 的最新版本,除非{{1} }已经存在。

更改内容:最新版本的numpy需要Python 3.5以上版本,因此会出现错误消息。

因此,即使numpy命令明确要求pip,它也会触发更新的install numpy==1.14.6 scipy==1.0.1安装程序,该安装程序在Python 2上失败。(堆栈跟踪中的最后一项显示{{1 }}需要Python 3。)

问题出现在pip,scipy和numpy安装程序以及easy_install之间的交互中。 pip issue #6945中的详细信息。

解决方法::首先安装numpy。然后安装numpy-1.17.1。另外,如果您不需要numpy选项,则可以执行单行安装。