在Python中列出虚拟环境

虚拟环境是一个我们可以安装库、包、脚本和 Python 解释器的环境。如果你的项目需要不同版本的不同库或 Python 解释器,你可以为每个项目创建单独的虚拟环境。

这些虚拟环境与其他已开发的虚拟环境隔离。所以与库、包的版本有关的错误就不会发生。

例如,我们假设你正在做一个叫做Project1 的 Python 项目。它需要NumPy 库的版本A

当在Project1 上工作时,你想启动Project2 。但是它需要B 版本的NumPy

因此,如果我们将NumPy 升级/降级到B 版本,Project1 可能会出现一些错误,因为NumPy 需要的版本已经改变。

为了克服这个问题,我们可以创建两个虚拟环境,并在其中分别安装这些版本。有几种方法来创建虚拟环境,但本文将讨论列出虚拟环境的方法。

在Python中列出虚拟环境

如果我们有虚拟环境,并且我们想列出所有的虚拟环境,我们可以使用几个命令来列出它们。没有必要激活虚拟环境来列出它。

一旦创建,我们就可以把它们列下来。在这篇文章中,我们讨论三种方法。

使用lsvirtualenv 命令

我们可以使用lsvirtualenv 命令来列出现有的虚拟环境。为了使用这个命令,我们需要安装virtualenvwrapper

virtualenvwrapper 是一个工具,我们可以将虚拟环境包装/装箱。它几乎像一个容器。

如果没有安装这个工具,系统将无法识别这个命令。

为了列出虚拟环境,我们需要创建它们。因此,让我们使用virtualenv 工具创建一个虚拟环境。

virtualenv 是一个工具,我们可以在这里创建相互隔离的Python虚拟环境。有不同的方法来创建虚拟环境,但让我们使用virtualenv 工具来实现这个方法。

安装virtualenv 工具 (只有在你还没有安装它的时候):

$ pip install virtualenv

创建一个虚拟环境:

语法:

virtualenv <environment_name>

现在让我们创建vEnv1 作为我们的虚拟环境。

在Python中列出虚拟环境

你已经成功创建了一个虚拟环境。你可以检查你的虚拟环境文件夹的路径,该文件夹包含主要的可执行文件,以运行一个Python项目。

安装virtualenvwrapper 工具 (只有在你没有安装它的情况下):

$ pip install virtualenvwrapper

列出虚拟环境:

$ lsvirtualenv

现在我们可以看到我们创建的虚拟环境了。

输出:

在Python中列出虚拟环境

有时你会得到一个信息,表明File not found 或一个空的空间。你应该把WORKON_HOME 路径改为你当前的虚拟环境目录。

WORKON_HOME 的默认路径是Users%USERNAME%Envs 。所以当我们执行lsvirtualenv 命令时,它将检查路径以列出虚拟环境。

如果你在其他地方创建了你的虚拟环境,你就不能得到这个列表,你就需要把这个路径设置为WORKON_HOME 变量。

  1. 在你的系统中进入Environment variables
  2. System variables ,点击New 按钮。
  3. WORKON_HOME 作为变量,将你的虚拟环境根的路径作为值。
  4. 点击OK

现在,如果你尝试使用lsvirtualenv 命令,你可以看到一个虚拟环境的列表,从你创建它们的地方。

使用Conda 命令

Conda 是Anaconda自带的一个环境管理系统,Anaconda是一个用于数据科学计算和包管理的Python发行版。 有几个命令来创建、删除和列出虚拟环境。Conda

如果我们使用conda 制作我们的虚拟环境,我们应该使用conda 命令列出它们。

让我们使用conda 创建两个虚拟环境。

语法:

conda create --name <environment_name>

创建两个虚拟环境:

$ conda create --name vEnv2
$ conda create --name vEnv3

现在我们可以列出它们。Conda 提供了三个命令来列出虚拟环境。任何一个都会给你同样的结果。

$ conda env list
$ conda info --envs
$ conda info -e

让我们使用第一个命令,conda env list 。结果是,它将显示我们创建的虚拟环境,如下图。

在Python中列出虚拟环境

使用workon 命令

我们需要安装virtualenv 工具来使用这个命令。正如前面提到的,它可以用来创建虚拟环境,而workon 命令是与之相伴的。

我们使用workon 命令来激活一个虚拟环境。另外,使用这个命令不加参数可以获得一个虚拟环境的列表。

由于我们先前使用virtualenv 命令创建了一个虚拟环境,让我们尝试使用workon 命令来列出它。

$ workon

现在我们可以看到我们创建的虚拟环境了。

在Python中列出虚拟环境

总结

这篇文章讨论了一个虚拟环境和三种在 Python 中列出虚拟环境的方法。你可以使用其他的方法,但是开发者经常使用讨论的技术。