如何使用Python 3.7创建Python 2.7虚拟环境

Q L*_*Liu 17 virtualenv python-2.7 python-3.x python-venv python-3.7

我有 Python 3.7,但我想创建一个 Python 2.7 虚拟环境来运行一些仅适用于 Python 2.7 的代码。

如何创建这个 python 2.7 虚拟环境?

python3 -m venv
Run Code Online (Sandbox Code Playgroud)

像这样?

np8*_*np8 23

创建虚拟环境时,pyvenv.cfg会创建一个包含home密钥的密钥,该密钥告诉用于创建虚拟环境的 python 可执行文件的位置。如果您的全局 python 安装版本是 3.8.6,并且您运行

python3 -m venv something
Run Code Online (Sandbox Code Playgroud)

您将在文件夹中创建虚拟环境something,该环境pyvenv.cfg指向pythonPython 3.8.6 安装的可执行文件。没有简单的方法*使其指向 Python 2.7 可执行文件。

你能做什么?

virtualenv作为venv替代品

venv模块是在 Python 3.3 中引入的,因此您不能使用它来使用 python 2.7 创建虚拟环境。您可以使用该virtualenv包,它是venv. 首先,使用 python 2.7** 安装它:

python -m pip install virtualenv
Run Code Online (Sandbox Code Playgroud)

如果 Python 2.7 不在您的 PATH 中python,请使用 python 可执行文件的完整路径代替python。然后,您可以创建具有 Python 2.7 的虚拟环境

virtualenv something
Run Code Online (Sandbox Code Playgroud)

或者

virtualenv --python=python2.7 something 
Run Code Online (Sandbox Code Playgroud)

*至少开箱即用的venv模块不支持它。** 实际上,您可以使用任何
Python 版本 安装它,但是您必须在运行时指定or 。默认情况下,它使用用于安装它的 python 可执行文件。--python=/opt/python-2.7/bin/python--python=python2.7virtualenv


Jar*_*vis 0

venv\xe2\x80\x99 不允许使用当前安装的 Python 版本以外的其他版本创建虚拟环境。您必须使用传统的virtualenv包,它允许通过提供二进制文件的路径来为不同版本的 python 创建虚拟环境,如下所示:

\n
virtualenv --python=/usr/bin/python2.7 /path/to/virtualenv/\n
Run Code Online (Sandbox Code Playgroud)\n

路径在哪里/usr/bin/python2.7是指系统上 Python 2.7 的二进制文件的路径。

\n