在虚拟环境中使用 Python 3

新手上路,请多包涵

使用 virtualenv ,我使用默认版本的 Python (2.7) 运行我的项目。在一个项目中,我需要使用 Python 3.4。

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

例如 sudo virtualenv envPython3

如果我尝试:

 virtualenv -p python3 test

我得到:

 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

原文由 Prometheus 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 235
2 个回答

简单地运行

virtualenv -p python3 envname

OP编辑后更新:

OP 的 virtualenv 版本中存在一个错误,如此 所述。通过运行解决了这个问题:

 pip install --upgrade virtualenv

原文由 tbrisker 发布,翻译遵循 CC BY-SA 3.0 许可协议

Python 3 内置了对虚拟环境的支持 ——venv 。最好改用它。参考文档:

虚拟环境的创建是通过执行 pyvenv 脚本完成的:

pyvenv /path/to/new/virtual/environment

Python 3.6 及更新版本的更新:

正如 pawciobiel 正确 评论 的那样, pyvenv 从 Python 3.6 开始被 弃用,新方法是:

 python3 -m venv /path/to/new/virtual/environment

原文由 geckon 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题