首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在虚拟环境中使用Python 3

在虚拟环境中使用Python 3
EN

Stack Overflow用户
提问于 2014-05-24 08:05:53
回答 22查看 1.1M关注 0票数 867

使用维塔列夫,我使用默认版本的Python (2.7)运行我的项目。在一个项目中,我需要使用Python3.4。

我用brew install python3把它安装在我的Mac上。现在,我如何创建一个使用新版本的虚拟环境?

例如sudo virtualenv envPython3

如果我试着:

代码语言:javascript
复制
virtualenv -p python3 test

我得到:

代码语言:javascript
复制
Running virtualenv with interpreter /usr/local/bin/python3
Using base prefix '/usr/local/Cellar/python3/3.4.0_1/Frameworks/Python.framework/Versions/3.4'
New python executable in test/bin/python3.4
Also creating executable in test/bin/python
Failed to import the site module
Traceback (most recent call last):
  File "/Users/user/Documents/workspace/test/test/bin/../lib/python3.4/site.py", line 67, in <module>
    import os
  File "/Users/user/Documents/workspace/test/test/bin/../lib/python3.4/os.py", line 634, in <module>
    from _collections_abc import MutableMapping
ImportError: No module named '_collections_abc'
ERROR: The executable test/bin/python3.4 is not functioning
ERROR: It thinks sys.prefix is '/Users/user/Documents/workspace/test' (should be '/Users/user/Documents/workspace/test/test')
ERROR: virtualenv is not compatible with this system or executable
EN

回答 22

Stack Overflow用户

回答已采纳

发布于 2014-05-24 08:11:01

简单地跑

代码语言:javascript
复制
virtualenv -p python3 envname

在OP编辑后更新:

正如这里所描述的,OP的virtualenv版本中有一个bug。通过运行以下方法解决了这个问题:

代码语言:javascript
复制
pip install --upgrade virtualenv
票数 1.5K
EN

Stack Overflow用户

发布于 2015-05-14 09:09:36

Python3内置了对虚拟环境的支持- 文夫。不如用它代替。关于文件:

虚拟环境的创建是通过执行pyvenv脚本完成的: pyvenv /path/to/new/virtual/environment

Python3.6及更高版本的更新:

由于典当正确地使用了评论pyvenv是Python3.6中的已弃用,新的方法是:

代码语言:javascript
复制
python3 -m venv /path/to/new/virtual/environment
票数 290
EN

Stack Overflow用户

发布于 2015-09-19 20:38:09

我尝试了碧昂夫,它非常方便地切换python版本(全局的、本地的、文件夹中的或虚拟的):

代码语言:javascript
复制
brew install pyenv

然后安装所需的Python版本:

代码语言:javascript
复制
pyenv install 3.5.0

只需创建具有所需解释器版本的路径的virtualenv:

代码语言:javascript
复制
virtualenv -p /Users/johnny/.pyenv/versions/3.5.0/bin/python3.5 myenv

就这样,看看这个版本:

代码语言:javascript
复制
. ./myenv/bin/activate && python -V

还有用于pyenv pyenv-虚拟化的插件,但不知怎么的,它对我不起作用。

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

https://stackoverflow.com/questions/23842713

复制
相关文章

相似问题

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