kjo*_*kjo 4 python numpy pip scipy easy-install
(注意:请参阅另一篇文章,了解为什么我没有使用dpkg/apt-get/etc进行此安装.)
我可以在Debian的virtualenv中安装numpy,例如pip:
(base)[1778]% pip -v install numpy
Downloading/unpacking numpy
...
<output omitted>
...
Successfully installed numpy
Cleaning up...
Removing temporary dir /home/jones/.virtualenvs/base/build...
Run Code Online (Sandbox Code Playgroud)
但在此之后立即:
(base)[1779]% python
Python 2.7.1 (r271:86832, Jun 22 2011, 15:39:05)
[GCC 4.3.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import numpy
import numpy
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named numpy
>>> ^D
Run Code Online (Sandbox Code Playgroud)
有任何想法吗?
好的,我发现了问题.事实证明,即使我的virtualenv处于活动状态(请参阅(base)上面屏幕交互片段中命令行提示的前缀),我仍然需要告诉pip使用它.比如运行之类的东西
pip -E /path/to/virtualenv install numpy
Run Code Online (Sandbox Code Playgroud)
然后在交互式python会话中导入numpy成功(导入的模块是否正常运行,我还不知道).
这很荒谬:我的virtualenv是活动的,我正在运行的pip可执行文件是安装在virtualenv中的那个:
(base)[1801] which pip
/home/jones/.virtualenvs/base/bin/pip
Run Code Online (Sandbox Code Playgroud)
那么,如果pip默认不使用它,那么拥有virtualenv的重点是什么?