Chr*_*per 19 mod-wsgi python-3.x
我正在使用Python 3.4,并创建了pyvenv,我希望在python进程中激活它.使用virtualenv,我曾经使用过activate_this.py
,但这似乎在pyvenv中消失了.
现在有一种简单的方法可以有效地将当前的解释器更改为virtualenv解释器吗?我可能会搞乱PATH(这就是做了什么activate_this.py
),但我想要一种更简单,更稳定的方式.
这适用于wsgi.py.
pyvenv
并且venv
模块不支持开箱即用.第三方virtualenv
软件包支持使用activate_this.py
,但该功能未包含在内置venv
模块中.
您可以尝试activate_this.py
从virtualenv
基础环境中借用一份副本; 它似乎工作,虽然我不能发誓它将是完美的(venv
/ pyvenv
在启动时使用一些魔法;不清楚是否所有它都通过复制activate_this.py
).
virtualenv
Python 3 的文档已经过时了(他们声称你使用的execfile
,不存在).Python 3兼容的替代方案是:
activator = 'some/path/to/activate_this.py' # Looted from virtualenv; should not require modification, since it's defined relatively
with open(activator) as f:
exec(f.read(), {'__file__': activator})
Run Code Online (Sandbox Code Playgroud)
没有什么activate_this.py
确实是神奇的,所以你可以手动执行相同的变化,而不从掠夺virtualenv
(调整PATH
,sys.path
,sys.prefix
,等),但借款使得它在这种情况下要简单得多.
归档时间: |
|
查看次数: |
3920 次 |
最近记录: |