在 anaconda 虚拟环境之间切换以及激活/停用/删除的使用

ale*_*lex 4 python anaconda virtual-environment

我目前已经miniconda安装了1+virtualenvironment基础环境。

conda env list

# conda environments:
#
base                  *  /home/alex/miniconda3
machinelearning          /home/alex/miniconda3/envs/machinelearning
Run Code Online (Sandbox Code Playgroud)

正如星号所示,我目前正在使用基础环境。为了转移到machinelearning环境中,我是否需要activate再次转移到环境中?这应该是切换到的命令machinelearning吗? conda activate machinelearningdeactivate在这样做之前我需要先从基地出发吗?我也不明白deactivateremove环境之间的区别。

我阅读了有关管理环境的 anaconda 文档https://docs.conda.io/projects/conda/en/latest/user-guide/tasks/manage-environments.html#sharing-an-environment,但没有找到任何解释的差异。

bar*_*ssa 7

当您打开 powershell 时,您将进入默认的 powershell 窗口:PS C:\Users\some_user>

然后,如果您输入,conda activate base您将看到以下行:(base) PS C:\Users\some_user

现在您处于 conda 默认的基本环境中。如果您想切换到另一个环境,您只需键入:conda activate myenv在基本环境中。

(base) PS C:\Users\some_user> conda activate myenv
(myenv) PS C:\Users\some_user> 
Run Code Online (Sandbox Code Playgroud)

现在,当您停用myenv时,它将返回到基本环境。

(myenv) PS C:\Users\some_user> conda deactivate
(base) PS C:\Users\some_user> conda deactivate
PS C:\Users\some_user>
Run Code Online (Sandbox Code Playgroud)

激活环境对于使环境中的软件正常运行至关重要。激活需要两个主要功能:向环境的 PATH 添加条目以及运行环境可能包含的任何激活脚本。这些激活脚本是包如何设置其操作可能必需的任意环境变量的方式。您还可以使用配置 API 来设置环境变量。(https://docs.conda.io/projects/conda/en/latest/user-guide/tasks/manage-environments.html

当您位于某个环境中时,可以访问该环境中的包。当您切换或停用某个环境时,将无法从 powershell 访问特定于该环境的那些包。

删除环境时,意味着您从计算机中永久删除环境以及属于该环境的所有包。

PS C:\Users\some_user> conda remove --name myenv --all

Remove all packages in environment C:\Users\some_user\.conda\envs\myenv:

No packages found in C:\Users\some_user\.conda\envs\myenv. Continuing environment removal
Run Code Online (Sandbox Code Playgroud)