搞乱多个版本的pip来安装numpy

时间:2017-06-23 14:26:58

标签: python pip

我在某种程度上混淆了我的python版本和pip版本。因此,我很难安装numpy。我使用以下默认的python版本

>>> print(sys.version)
3.5.3 (default, Jan 19 2017, 14:11:04) 
[GCC 6.3.0 20170118]
>>> 

我安装了几个python / pip版本:

ola@think:~$ /usr/bin/python
python             python2.6          python2.7-config   python3            python3.5-config   python3.5m-config  python3m           python-config      pythontex3         
python2            python2.7          python2-config     python3.5          python3.5m         python3-config     python3m-config    pythontex          
ola@station:~$ 

如果我想导入numpy,我会得到以下内容:

>>> import numpy
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: No module named 'numpy'

但是,运行pip3.5安装显示:

ola@station:~$ sudo pip3.5 install numpy
Requirement already satisfied: numpy in /usr/local/lib/python2.7/dist-packages
ola@station:~$ 

有些东西看起来很可疑,但我不知道如何解决它。帮助将不胜感激

2 个答案:

答案 0 :(得分:3)

如果您不确定哪个pip程序与您的多个python版本相关联,我建议您从所需的python版本调用pip。以下命令从目标python程序中调用pip模块。

python -m pip install numpy

使用绝对路径时,它会给出

/usr/bin/python2.7 -m pip install numpy
/usr/bin/python3 -m pip install numpy

答案 1 :(得分:1)

你不是只安装了多个版本的pip,你有多个版本的Python本身。

看起来numpy安装在python 2.7软件包中,但不在python 3.5软件包中。

如果你想使用numpy和python 2.7,那么当你运行脚本时,你需要告诉它使用python 2.7。见this answer.

或者,如果你想使用numpy和python 3.5,那么你需要将它安装在正确的位置。

作为建议: 除非你因为某些原因需要安装了不同版本的python,否则我会建议使用anaconda重新开始,其中包含许多科学软件包(包括numpy)。