我尝试使用virtualenvwrapper创建一个包含python2和python3的virtualenv
Per virtualenv with python2 and python3 via Homebrew我希望这会奏效:
(virtualenv的名字是'double')
mkvirtualenv double -p `which python`
mkvirtualenv double -p `which python3`
提到
Not overwriting existing python script both/bin/python (you must use both/bin/python3.4)
但这似乎不是真的。键入python
python2.7
python3
和python3.4
都会启动python3.4
解释程序。
答案 0 :(得分:19)
很抱歉,virtualenv旨在支持单一解释器版本。
如果您需要在同一代码库上使用多个python版本,请创建单独的虚拟环境。
答案 1 :(得分:9)
virtualenv
不支持多个解释器版本。我的建议是为每个版本使用不同的环境:
virtualenv -p /usr/bin/python3.3 py3env
virtualenv -p /usr/bin/python py2env
答案 2 :(得分:4)
virtualenv
可帮助您隔离环境。
它不能同时支持多个python版本。 您可以尝试pyenv和pyenv-virtualenv。它支持您将文件夹更改为另一个python版本和工作环境。它很容易切换版本。
如果您无法安装pyenv并在Mac上工作。 anyenv可以帮助您安装pyenv
。
示例:
$ pyenv install 3.4.1
$ pyenv install 2.7.6
$ pyenv virtualenv 3.4.1 mypy3
$ pyenv virtualenv 2.7.6 mypy2
$ pyenv versions
* system
3.4.1
2.7.6
mypy3
$ cd /work/
$ pyenv local mypy3 # Use Py3 now
$ pyenv local mypy2 # Use Py2 now
答案 3 :(得分:1)
virtualenv -p /path/to/your/python/version/exectuable ENV
是what you want。 (我知道这是一个老问题,但是我现在在这里查看,发现答案没有更新。)
答案 4 :(得分:0)
我有一个涉及Vagrant / VirtualBox的解决方案...(它有我的引导程序设置,用于启动一个django项目,但是把它分叉并随之疯狂!)
包在这里,https://github.com/andrewyoung1991/python-3.4.1-vagrant-bootstrap.git 不幸的是,虚拟环境是一个单人python游戏,但有了VirtualBox,你可以在沙箱中自由工作,调用python2或python3