Python 3.4已安装,如何为Python 2.7安装numpy?

11

我既有Python 2.7也有Python 3.4 (必须都有,因为我正在授课的班级中,学生可以选择使用任意一个版本)。有一名学生在他们的项目中使用了Python 2.7和numpy,但是当我尝试安装numpy时,它被安装到了3.4上。我需要将它安装到2.7上。

我正在使用来自此网站的numpy 1.9,据我所知这也是2.7特定的:http://sourceforge.net/projects/numpy/files/NumPy/

然而,不管怎样它仍然进入了3.4文件夹。显然将其复制到Python 2.7中是行不通的。

我该怎么办?


你使用的是哪个操作系统?你是如何安装它的?你实际下载了那个网站上的哪些文件,又用它做了什么? - BrenBarn
卸载3.4并确保目录已删除,然后安装2.7的numpy。完成所有操作后,再安装Python 3.4。 - Feign
谁告诉你这是只适用于2.7的?当我打开那个页面时,我下载到一个源码文件,根据README中的说明,它支持Python 2.6 - 2.7和3.2 - 3.4版本。 - abarnert
1
@Feign:那是一种极端的解决方案,不应该是必要的。 - BrenBarn
5个回答

2
我建议使用pip进行安装。
pip install numpy

如果在Windows上无法运行,请从http://www.lfd.uci.edu/~gohlke/pythonlibs/下载二进制文件,并在安装之前将其转换为wheel格式。

pip install wheel
wheel convert path/to/binary
pip install numpy_wheel 

Pip是推荐的,因为您可以卸载。

要检查您正在安装到哪里

pip -V

你可能将环境变量路径指向了错误的pip。


你说的“在Windows上这行不通”是什么意思?我就是这样在我的Windows环境中安装了numpy...当然,你需要安装C编译器并按照说明进行操作,但在某些时候,你会遇到Gohlke没有的库,或者需要更新版本,所以学习如何自己操作真的很值得。 - abarnert
在Windows上,pip不总是有效。有时它们没有为Windows编译库。过去,NumPy对我无效;也许现在可以使用了。 - justengel
1
@abarnert:这是一个判断性的问题。在Windows上设置编译环境并不容易,特别是对于像numpy这样的东西。如果OP使用的是Windows系统,那么基于运行可执行安装程序的解决方案可能会很有用。 - BrenBarn
@BrenBarn:说“在Windows上这不起作用”并不是一个判断,而是完全错误的。说“在Windows上你可能不想这样做”,那就是另外一回事了,实际上,我同意。几乎所有用户都应该从Gohlke的库开始,至少要确保他们的设置能够正常工作并理解它,然后再学习构建东西。 - abarnert
@abarnert:是的,我指的是值得学习如何安装C编译器的部分。至于其他方面,我认为最近才出现了pip install适用于numpy的情况,所以如果有人在一段时间前安装了Python/pip,它可能无法正常工作,这并不令人惊讶。 - BrenBarn

1
假设您正在使用或至少应该使用pip来安装库。您可以通过更改后缀指定要安装的Python版本,例如pip-2.7 install numpy
pip install numpy
pip-2.7 install numpy
pip-3.4 install numpy

作为一种替代方案,如果您不想使用pip,则可以使用类似技术的设置下载和安装库。
python setup.py install
python2.7 setup.py install
python3.4 setup.py install

他从那个网站下载文件的事实表明他没有使用pip。 - BrenBarn
2
+1。如果您没有使用pip安装库,那么(a)您正在使用平台的二进制安装程序(无论是Christoph Gohlke的还是来自apt或rpm存储库或类似的东西),在这种情况下,您只需要选择正确的二进制文件,或者(b)无论您正在做什么,您都应该停止这样做,而改用pip,在这种情况下,此答案将解决您所有的问题。 - abarnert
@BrenBarn:我已经包含了一个使用setup.py的替代方案。 - eandersson

1
你的 PATH 设置不正确。
C:> where pip

应该告诉你它正在尝试使用哪个pip,很可能是在你的PATH中首先找到的那个...

因此,你需要将其运行为

C:> C:\mypython2install\pip.exe install numpy

或者,正确设置您的路径。请参见此处

0

注意-本答案特别适用于在Windows PC上安装了Python2和Python3的情况。

Python的两个版本有不同的目录,例如:

"C:\Python27\" ----适用于Python2

"C:\Python35\" ---- 适用于Python3

*(或者取决于您在安装Python时选择的路径)*

pip通常存在于目录"C:\Python**\Scripts"下

在那里,您可以找到如下exe文件:

pip.exe/pip2.exe/pip2.7.exe ----适用于Python2

pip3.exe/pip3.5.exe ----适用于Python3

要在Python2上安装软件包:

使用

Python27\Scripts\pip2.exe install package_name

(其中第一个参数是exe文件的路径,它可能因您的系统而异)

要在Python3上安装软件包:

使用

Python35\Scripts\pip3.exe install package_name

没有必要卸载任何版本的Python来完成任务。


0

关于这类问题,只有一个其他需要注意的地方。我曾经遇到过类似的问题,Python 2.7 库找不到,因为我安装了 miniconda 作为 Python 虚拟环境,它劫持了来自其他程序的 python 调用。在我的 home 目录删除 minconda 目录后,问题消失了,正确安装的 python 库又被找到了。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接