关于django:如何为特定版本的Python创建虚拟环境?

How to create a virtual environment for a specific version of Python?

本问题已经有最佳答案,请猛点这里访问。

我用的是MacBook。它附带安装了python 2.7.6。我手动安装了python 3.4。我使用django开发网站。我只使用了python 3,当我处理一个项目时,我只是把它放在一个虚拟环境中。

例如,我有一个使用django-1.8和python-3.4的项目。我使用以下命令创建环境:

1
python3 -m venv myvenv

之后,我在这个环境中安装了django和其他包。

但是,我想使用python 2.7处理另一个项目。我如何为python 2.7创建一个环境,并在其中安装包,以便我的其他项目同时保持独立和可操作性?

还有,这是最好的方法吗?如果我继续这样下去,我会把事情搞砸吗?

编辑:我尝试了另一个问题的解决方案。我在终端上运行了以下命令:

1
virtualenv -p /usr/bin/python2.7 <path/to/new/virtualenv/>

我得到以下错误:

1
-bash:syntax error near unexpected token 'newline'

另外,我尝试使用运行此命令的pip安装virtualenv:

1
pip install virtualenv

它说没有发现pip,这很奇怪,因为我以前在虚拟环境中使用过无数次pip。我犯了一个愚蠢的错误吗?


使用python -m venv时,虚拟环境将创建用于调用to命令的python解释器。

要为特定解释器创建virtualenv,只需使用它来运行venv模块,使用此解释器:

1
 /path/to/python3.x -m venv

venv模块不适用于旧的python解释器。对于那些需要安装单独的virtualenv包的用户。实际安装取决于您的操作系统。

命令如下:

1
 virtualenv -p /usr/bin/python2.7 /home/myuser/myvenvfolder