首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >venv / pyvenv中没有activate_this.py文件

venv / pyvenv中没有activate_this.py文件
EN

Stack Overflow用户
提问于 2014-07-30 00:33:14
回答 1查看 18.3K关注 0票数 25

我需要从python脚本中启动venv / pyvenv,并且我知道官方文档将运行:

代码语言:javascript
复制
activate_this = '/path/to/env/bin/activate_this.py'
execfile(activate_this, dict(__file__=activate_this))

但是我没有activate_this.py文件,我也找不到如何创建它的地方。

我正在运行python 3.4.1。你知道我需要做什么吗?

EN

回答 1

Stack Overflow用户

发布于 2015-11-11 02:55:14

正如您已经注意到的,pyvenv/the venv模块不随activate_this.py一起提供。但如果您需要此功能,您可以从virtualenv借用activate_this.py,将其放在预期的位置(virtualenv_path/bin/activate_this.py),然后使用它。它似乎工作得很好。唯一的问题是Python3的virtualenv文档已经过时了(他们声称你使用的是并不存在的execfile )。与Python 3兼容的替代方案是:

代码语言:javascript
复制
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})

activate_this.py所做的任何事情都不是神奇的,所以您可以手动执行相同的更改,而无需从virtualenv中抢夺(调整PATHsys.pathsys.prefix等),但在这种情况下,借用会使其变得简单得多。

票数 24
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25020451

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档