conda环境
conda 中的环境是独立的隔离空间,您可以在其中安装特定版本的软件包,包括依赖项、库和 Python 版本。这种隔离有助于避免包版本之间的冲突,并确保您的项目具有所需的确切库和工具。
入门文档:入门文档
更多细节:更多细节
为什么要创建新环境
- 依赖项隔离
- 可重现性
- 易于管理
- 测试、开发
为什么我们不应该在基本环境中工作
base环境
首次安装和使用 conda 时,您可能会看到对称为 base
或 “base environment” 的引用。此环境是安装 conda 本身的位置,只能用于安装 anaconda、conda 和与 conda 相关的软件包,例如 anaconda-client
或 conda-build
。
新环境
但是,对于您的项目,Anaconda 强烈建议创建新的工作环境。这可以保护您的基本环境不会因复杂的依赖关系冲突而中断,并允许您在其他计算机上轻松管理和重现您的环境。
使用环境
创建环境
打开终端,以下命令创建一个新环境并下载指定的包及其依赖项:
1 | conda create --name <ENV_NAME> <PACKAGE>=<VERSION> |
example:
1 | conda create --name myenv python=3.11 beautifulsoup4 docutils jinja2=3.1.4 wheel |
激活环境
1 | conda activate <ENV_NAME> |
在环境之间切换
当您准备好在项目之间切换时,只需激活另一个项目的环境即可。激活其他环境将停用您当前的环境。
(可选)通过运行以下命令查看所有环境的列表:
1
conda info --envs
切换环境:
1
conda activate <ENV_NAME>
锁定环境
确保您的项目无限期地保持可重现性的最可靠方法是 “锁定” 其环境。锁定环境会创建一个完全指定的环境,该环境包含项目中使用的所有包及其依赖项,这些包都配置为特定版本。这可确保您的项目将完全按照最初的配置进行复制,因为如果发布了新的包依赖项,则永远不会发生意外的更新或更改。
锁定项目需要在要锁定的环境中安装
conda-project
包。通过运行以下命令安装软件包:1
2conda activate <ENV>
conda install conda-project如果您的项目不包含
environment.yml
文件,请运行以下命令创建一个:1
conda-project init
锁定环境:
1
conda-project lock
锁定项目会生成一个 conda-lock.default.yml
文件,您可以导出该文件以与他人共享。
共享环境
与其他人共享您的环境允许他们使用 conda 在其计算机上重新创建您的环境。
要共享环境及其软件包,您必须将环境的配置导出到 .yml
文件中。
注意
- 简单地将 Anaconda 或 Miniconda 文件复制到新目录或其他计算机不会重新创建环境。您必须将环境作为一个整体导出。
- 如果当前目录中已有环境配置
.yml
文件,则在导出过程中将覆盖该文件。
步骤
激活要导出的环境:
1
conda activate <ENV_NAME>
导出环境
1
conda env export > environment.yml
停用环境
最佳做法是在完成环境中的工作后停用环境。
停用环境:
1 | conda deactivate |
删除环境
终端运行:
1 | conda remove --name <ENV_NAME> --all |
验证是否已经删除环境:
1 | conda info --envs |