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

时间:2021-01-12 13:46:05

标签: python-3.x python-2.7 virtualenv python-3.7 python-venv

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

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

<块引用>

python3 -m venv ?

2 个答案:

答案 0 :(得分:0)

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

virtualenv --python=/usr/bin/python2.7 /path/to/virtualenv/

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

答案 1 :(得分:0)

在创建虚拟环境时,会创建一个 pyvenv.cfg,它具有 home 键,该键指示用于创建虚拟环境的 python 可执行文件的位置。如果您的全局 python 安装版本是 3.8.6,并且您运行

python3 -m venv something

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

你能做什么?

virtualenv 作为 venv 替换

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

python -m pip install virtualenv

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

virtualenv something

virtualenv --python=python2.7 something 

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