virtualenv 和 VIRTUAL_ENV 关键字
在安装了一个新的虚拟环境,比如叫做 ENV 之后,如果我输入
. /path/to/ENV/bin/activate
python
import os
print os.environ['VIRTUAL_ENV']
那么我会看到 /path/to/ENV/
但是,如果我输入
/path/to/ENV/bin/python
然后再输入
import os
print os.environ['VIRTUAL_ENV']
我就遇到了一个键错误(key error)。那么这两种方法之间的根本区别是什么呢?谢谢!
1 个回答
13
在 bin/activate
这个脚本里,有一行代码是这样的:
VIRTUAL_ENV="/Users/me/.envs/myenv"
export VIRTUAL_ENV
这行代码的作用是设置你的 VIRTUAL_ENV
环境变量。当你不使用激活命令时,这个变量就不会被导出,所以在 os.environ
中是找不到的。