Amazon EC2 virtualenv:pip说它安装了numpy但python无法找到它

时间:2018-06-05 16:28:09

标签: python numpy amazon-ec2 pip

我已经非常彻底地研究了这个问题,似乎无法找到答案。

我正在运行virtualenv并尝试使用Python 2.7在EC2上安装numpy。是的,我已经激活了virtualenv。

(dev)[ec2-user site]$ pip --no-cache-dir install numpy
Collecting numpy
  Downloading https://files.pythonhosted.org/packages/c0/e7/08f059a00367fd613e4f2875a16c70b6237268a1d6d166c6d36acada8301/numpy-1.14.3-cp27-cp27mu-manylinux1_x86_64.whl (12.1MB)
    100% |████████████████████████████████| 12.1MB 87.8MB/s
Installing collected packages: numpy
Successfully installed numpy-1.14.3

但是,紧接着:

(dev)[ec2-user site]$ python -c "import numpy; print numpy.__version__"
Traceback (most recent call last):
  File "<string>", line 1, in <module>
ImportError: No module named numpy

我升级了点子。 numpy包似乎已安装:

(dev)[ec2-user site]$ find ~/ -name numpy
/home/ec2-user/dev/lib64/python2.7/dist-packages/pandas/compat/numpy
/home/ec2-user/dev/lib64/python2.7/dist-packages/numpy
/home/ec2-user/dev/lib64/python2.7/dist-packages/numpy/core/include/numpy

numpy未出现在pip freeze

> pip freeze | egrep numpy
>

所以 - 我无法卸载numpy来重新安装它。我已经尝试手动删除上面列出的numpy目录并重新安装,但没有骰子。是的,我安装了gcc,这似乎是我唯一遇到问题的软件包。

我不想yum install python27-numpy,因为我希望它包含在virtualenv中。

> which python
~/dev/bin/python
> python -V
Python 2.7.12

选择一个随机的python包,让我们说......,ansible,安装它,似乎没有问题:

> pip install ansible > /dev/null
> python -c "import ansible; print ansible.__version__"
2.5.4

所以这个问题似乎被孤立到了numpy。

1 个答案:

答案 0 :(得分:1)

好的 - 回答了我自己的问题:

pip似乎在这里安装了numpy:

/home/ec2-user/dev/lib64/python2.7/

但是python并没有将其作为库路径加载。

解决方案:

mv ~/dev/lib64/python2.7/dist-packages/numpy ~/dev/lib/python2.7/dist-packages/numpy

希望这可以帮助别人!