有没有办法列出使用venv模块创建的所有python虚拟环境?

问题描述 投票:0回答:4

Conda 允许我列出所有虚拟环境 如此处所示。 命令是:

conda info --envs OR conda env list  

我想使用 pip 来做到这一点。 pip 是否可以选择列出我创建的所有虚拟环境?我已经在桌面上创建了一个虚拟环境,但我无法找到将其与基本环境一起列出的方法。

python virtualenv conda python-venv
4个回答
6
投票

不,不是那么简单。

使用 venv、virtualenv 和大多数其他纯 Python 虚拟环境创建的 Python 虚拟环境可以存储在磁盘上的“任何地方”。而且据我所知,它们没有索引,它们是真正隔离的(毕竟你可以删除 venv 目录并完成它,你不需要做任何特殊的事情)。它们也不受环境经理的管理。所以这需要整个磁盘扫描。这可能是可以做到的(例如,您可以搜索所有 Python 可执行文件),但相当痛苦。

它与 miniconda 一起使用,因为 miniconda 管理它安装的其他包和文件,所以它将 venvs 放在具体路径中,例如/home/username/miniconda/envs/


一种间接方法是运行以下命令并查看 python 可执行文件所在的目录。有些路径将是 python 虚拟环境,您可以通过列出这些路径中的文件来验证它。

1
投票
$ whereis python

您可以使用 conda 创建和管理 venv 和 virtualenv 环境以及使用 pip 安装的其他包。

0
投票
首先创建一个conda环境,其中安装了CONDA和PIP,例如,

conda create --name core --channel conda-forge python=3.9 conda pip

这里我创建了名为“core”的conda环境,并在其中安装了Python 3.9、conda和pip。因此,现在“核心”conda 环境的功能类似于管理环境 shell。通过将 conda 安装到 conda 环境中,conda 将跟踪 pip 安装到该环境中的包。您必须在这个新的 conda 环境中使用“pip install”,因此 conda 将索引并跟踪这些 pip 软件包安装。然而,conda 仍然不会索引和集中管理 venv 环境,就像它自己的 conda 环境一样。
这是一个非常好的详细指南,解释了如何以及为何在虚拟环境中使用 conda 和 pip。它涵盖了同时使用 conda 和 pip 的重要方面。

为什么需要 Python 环境以及如何使用 Conda 管理它们

使用conda为python创建虚拟环境

列出当前目录下所有venv目录 及其子目录,你可以尝试这个:

0
投票
find . -type d -name "*.venv"


© www.soinside.com 2019 - 2024. All rights reserved.