gpt4 book ai didi

python - 在 Virtualenv 环境中安装 python-numpy

转载 作者:太空狗 更新时间:2023-10-29 21:46:48 25 4
gpt4 key购买 nike

我想在 Virtualenv 环境中安装 python-numpy。我的系统是Ubuntu 12.04,我的python是2.7.5。首先我安装了 Virtualenv

$ sudo apt-get install python-virtualenv

然后搭建环境

$ mkdir myproject
$ cd myproject
$ virtualenv venv
New python executable in venv/bin/python
Installing distribute............done.

激活它

$ . venv/bin/activate

在环境中安装了python-numpy

$ sudo apt-get install python-numpy

但是,我尝试在上述所有步骤之后在环境中的 python 中导入 numpy。 Python 告诉我“没有名为 numpy 的模块”。而 numpy 可以在 Python 中全局导入。我尝试多次删除和安装,但它不起作用。我是 Python 和 Linux 的初学者。

最佳答案

apt-get 仍会全局安装模块,即使您在新的 virtualenv 中也是如此。

您应该在虚拟环境中使用 pip install numpy(最简单的方法),或者使用 setup.py 从源代码编译和安装 numpy 源目录根目录中的文件(稍微难一点,see here)。

我还强烈建议您看一下 virtualenvwrapper ,这使得管理虚拟环境变得更加友好。

编辑:

你不应该使用sudo,无论是创建你的虚拟环境还是在其中安装东西——它是你的主文件夹中的一个目录,你不需要提升对其进行更改的权限。如果您使用 sudopip 将更改您的全局站点包,而不是您的虚拟环境,因此您无法安装 numpy本地。

另一件需要考虑的事情是 默认情况下,新的 virtualenvs 将从全局 site-packages 继承 - 即如果 Python 在本地找不到模块在您的 virtualenv 中,Python 还将查看您的全局站点包 *。在你的情况下,因为你已经全局安装了 numpy(使用 apt-get),当你尝试在你的 pip install numpy虚拟环境,pip 看到 numpy 已经在您的 Python 路径中,并且不会在本地安装它。

你可以:

  1. 在创建 virtualenv 时传递 --no-site-packages 选项。这会阻止新的 virtualenv 从全局站点包继承,因此所有内容都必须在本地安装。

  2. 强制 pip 在本地安装/升级 numpy,例如使用 pip install -U --force numpy


* As of v1.7 , virtualenv 的默认行为是不包括全局 site-packages 目录。您可以在创建新的虚拟环境时通过传递 --system-site-packages 标志来覆盖它。

关于python - 在 Virtualenv 环境中安装 python-numpy,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18204134/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com