Anaconda常用命令及环境管理指南

文章目录

  • 前言
  • 一、环境管理(核心功能)
    • 1、创建新环境:
    • 2、激活环境:
    • 3、停用环境:
    • 4、列出所有环境:
    • 5、删除环境:
    • 6、克隆环境: (创建一个环境的精确副本):
    • 7、导出环境配置: (保存当前环境中所有包的列表及其版本到 YAML 文件):
    • 8、从 YAML 文件创建环境:
  • 二、包管理
    • 1、在当前激活的环境中安装包:
    • 2、从特定频道安装包: (如 conda-forge 通常有更新更全的包):
    • 3、更新包:
    • 4、更新环境中的所有包:
    • 5、卸载包:
    • 6、列出当前环境中已安装的包:
    • 7、搜索可用的包版本:
  • 三、实用命令和信息
    • 1、检查 conda 版本:
    • 2、更新 conda 本身:
    • 3、清理缓存(释放磁盘空间):
    • 4、清理缓存(释放磁盘空间):
  • 四、与 Jupyter Notebook/Lab 集成
    • 1、让环境在 Jupyter 中可用: 首先激活你的环境 myenv,然后安装 ipykernel:
    • 2、将环境添加到 Jupyter 内核列表:
  • 重要提示
  • 总结

前言

Anaconda(更准确地说,是它的包和环境管理工具 conda)是数据科学和 Python 开发中管理项目环境和依赖的核心。以下是最常用和关键的 conda 命令:


一、环境管理(核心功能)

1、创建新环境:

bash 复制代码
conda create --name myenv

--name myenv 或 -n myenv: 指定环境名称为 myenv。

默认会安装 Python 的最新版本(来自你配置的默认频道)。

指定 Python 版本:

bash 复制代码
conda create --name myenv python=3.9

创建环境并直接安装包:

bash 复制代码
conda create --name myenv numpy pandas matplotlib scikit-learn

创建环境并指定 Python 版本 + 安装包:

bash 复制代码
conda create --name myenv python=3.8 numpy=1.21 pandas=1.3

2、激活环境:

在较老的 shell 中可能需要 source activate myenv,但 conda activate 是现在推荐的方式。激活后,命令行提示符通常会显示环境名 (myenv)。

Windows:

bash 复制代码
conda activate myenv

Linux/macOS:

bash 复制代码
conda activate myenv

3、停用环境:

无论什么平台:

bash 复制代码
conda deactivate

4、列出所有环境:

当前激活的环境旁边会有一个星号 *

bash 复制代码
conda env list
或
conda info --envs

5、删除环境:

bash 复制代码
conda env remove --name myenv
或
conda remove --name myenv --all

6、克隆环境: (创建一个环境的精确副本):

bash 复制代码
conda create --name mynewenv --clone myoldenv

7、导出环境配置: (保存当前环境中所有包的列表及其版本到 YAML 文件):

这个 environment.yml 文件可以分享给他人或在其他机器上重建相同的环境。

bash 复制代码
conda create --name mynewenv --clone myoldenv

8、从 YAML 文件创建环境:

这会根据 environment.yml 文件中的定义创建一个新环境(环境名在 YAML 文件中定义)。

bash 复制代码
conda env create --file environment.yml

二、包管理

1、在当前激活的环境中安装包:

bash 复制代码
conda install package_name

安装特定版本:

bash 复制代码
conda install package_name=1.2.3

一次安装多个包:

bash 复制代码
conda install numpy pandas scipy

2、从特定频道安装包: (如 conda-forge 通常有更新更全的包):

bash 复制代码
conda install -c conda-forge package_name

3、更新包:

bash 复制代码
conda update package_name

4、更新环境中的所有包:

谨慎使用! 这可能会更新很多包,有时可能引入不兼容性。最好在项目允许的情况下进行,并考虑在更新前备份环境 (conda env export)。

bash 复制代码
conda update --all

5、卸载包:

谨慎使用! 这可能会卸载很多包,有时可能引入不兼容性。最好在项目允许的情况下进行,并考虑在更新前备份环境 (conda env export)。

bash 复制代码
conda remove package_name

6、列出当前环境中已安装的包:

bash 复制代码
conda list

7、搜索可用的包版本:

bash 复制代码
conda search package_name

三、实用命令和信息

1、检查 conda 版本:

bash 复制代码
conda --version
或
conda -V

2、更新 conda 本身:

bash 复制代码
conda update conda

3、清理缓存(释放磁盘空间):

这会删除未使用的包和缓存。

bash 复制代码
conda clean --all

4、清理缓存(释放磁盘空间):

bash 复制代码
conda --help
conda command --help  # 例如: conda install --help

四、与 Jupyter Notebook/Lab 集成

1、让环境在 Jupyter 中可用: 首先激活你的环境 myenv,然后安装 ipykernel:

bash 复制代码
conda activate myenv
conda install ipykernel

2、将环境添加到 Jupyter 内核列表:

之后在 Jupyter 中新建 Notebook 时,就可以选择 "My Project Env" 内核了。

bash 复制代码
python -m ipykernel install --user --name myenv --display-name "My Project Env"

重要提示

conda vs pip: 在 conda 环境中,优先使用 conda install 来安装包,因为 conda 能更好地处理复杂的依赖关系(尤其是涉及非 Python 库时)。如果某个包在 conda 频道中不可用(或者你需要一个非常新的版本),可以在激活的 conda 环境中使用 pip install。但要尽量避免在同一个环境中混合使用 conda install 和 pip install 安装同一个包,可能会导致冲突。如果必须用 pip,最好在 conda install 完成后再用 pip。


频道 (-c): conda-forge 是一个非常流行且包更新及时的社区频道。有时默认的 defaults 频道没有你需要的包或版本,尝试 conda install -c conda-forge package_name。


环境隔离: 养成为每个项目创建独立环境的习惯!这是 conda 最重要的价值之一,它能避免不同项目间的包版本冲突。


总结

掌握这些命令,你就能高效地使用 Anaconda 管理你的 Python 项目和依赖了!记得多使用 conda command --help 查看具体选项。