12

我有一段时间没有使用我的 python/虚拟环境了,但我也安装了虚拟环境包装器。

我的问题是,在文档页面中它说要这样做:

export WORKON_HOME=~/Envs
$ mkdir -p $WORKON_HOME
$ source /usr/local/bin/virtualenvwrapper.sh
$ mkvirtualenv env1

我只是在提示下这样做了:

source /usr/local/bin/virutalenvwrapper.sh

现在我可以通过以下方式列出和选择环境:

>workon

>workon envtest1

我的问题是,既然这对我有用,我很困惑为什么我应该创建一个环境变量 WORKON_HOME 并将其指向 ~/Envs 文件夹?那有什么作用,我的工作如何在没有它的情况下正常工作?我也没有那个 /Envs 文件夹(我知道脚本会创建它)。

参考:http: //virtualenvwrapper.readthedocs.org/en/latest/

4

2 回答 2

10

如果WORKON_HOME未设置,您的默认 virtualenv 文件夹将设置为~/.virtualenvs
(请参阅virtualenvwrapper.sh l.118

您还将使用WORKON_HOME指定要pip使用的文件夹 ( export PIP_VIRTUALENV_BASE=$WORKON_HOME)

来源:virtualenvwrapper.readthedocs.org:绑定到 pip 的 virtualenv 支持

于 2012-12-09T13:38:33.703 回答
2

我很困惑为什么我应该创建一个环境变量 WORKON_HOME 并将其指向 ~/Envs 文件夹?

这是可选的。您很困惑(就像我一样),因为文档令人困惑。

那有什么作用,我的工作如何在没有它的情况下正常工作?

它告诉virtualenvwrapper要搜索 Python 环境的文件夹。该命令workon搜索路径WORKON_HOME是否已定义或未定义,~/.virtualenvs这就是它默认工作的原因。

定义不同WORKON_HOME目录的一个用例是,如果您希望使用不同的环境virtualenvwrapper。例如,如果您将虚拟环境备份保存到不同的文件夹或有多个用户想要维护自己的环境。

于 2015-10-25T17:49:58.743 回答