2017-02-16 61 views
0

我能够在virtualenv中安装python模块,但它也可以在virtualenv之外访问。如何限制在virtualenv中的使用?如何在只有virtualenv中安装python模块?

我去了virtualenv路径,然后输入激活。它被启动,因为我可以在开始时看到根。

然后我用命令PIP安装MODULE_NAME

激活当前虚拟env和再激活它。

当我激活虚拟env时,我能够导入模块。 当我禁用它时,模块仍然很容易导入。

我假设模块是全局安装的。我希望它仅在虚拟环境中安装,不应在外部访问。

ACTIVATED THE VIRTUAL ENV AND Td MODULE WAS IMPORTABLE AND THEN DEACTIVATED IT BUT STILL MODULE WAS STILL IMPORTABLE

+1

在virtualenv中安装模块不应该使其可以从venv外部访问。你做了什么来创建virtualenv,激活它并安装模块(请编辑问题) – Antwane

+0

当virtualenv激活时,你可以在开始时看到env名称。 首先,激活virtualenv,然后使用pip安装python模块。 请分享一个截图。 – 2017-02-16 09:48:57

回答

0

的的virtualenv工具基本上是用于分离多个项目所需的依赖关系。在virtualenv中安装的python版本将不会在全局目录中可见。尝试在virtualenv中正确执行以下步骤。

pip install virtualenv 

cd my_project_folder 

virtualenv venv 

virtualenv -p /usr/bin/python3.5 venv 

export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python2.7 

source venv/bin/activate 

[Vitualenv Link:][1] 

http://docs.python-guide.org/en/latest/dev/virtualenvs/

0

virtualenv -p /usr/bin/python3 name_of_venv #to create venv source name_of_venv/bin/activate #to activate venv pip install module_name #to install module

0

它不是从外部看到。只要你输入deactivate它不再是可导入的。

+0

我输入禁用,但它仍然是可导入的。 –

+0

截图并不完全相关。在明确显示您尝试导入模块并且无法使用的情况下制作截图,然后创建venv,激活它,安装模块,取消激活通风口并导入仍然有效。 –