这里用一篇文章快速总结 Conda 的相关概念和常用操作,方便日后查阅。详细请见 Conda 官方文档。
Conda 相关概念
初学时很难分清 Conda、Anaconda 等之间的区别,我们先把概念搞明白。

Conda 是一个包管理工具,最主要的功能是方便管理一个设备中安装的不同环境。使用的场景举例:
- 一个项目需要尝试不同版本的 Python 或库;
- 一个项目需要使用新版本的 Python 或库,但不想更新掉旧版本,因为有部分代码是依赖旧版本的;
- 有人身兼数职,既搞深度学习,又搞爬虫,他想独立地管理这两个不太相关的领域的库;
- 运行陌生的代码,想单独找个环境,用完即删除;等等。
对于深度学习领域,Conda 也几乎是必备的。因为大部分代码是用 Python 写的,而且代码并不是从头实现的,需要用到各种第三方库,这些库(如 TensorFlow、PyTorch 等)版本更新非常快,而且还分 CPU、GPU 等多个版本,这时包管理就非常重要了。
Anaconda 和 Miniconda 简而言之是安装 Python + Conda 环境的两种方式,即只要装了它,就相当于把 Python 和 Conda 都装好了。Miniconda 是最精简版本,几乎只有 Conda;Anaconda 更像懒人包,把大量常用的库预装好了。这类似于游戏本体和豪华版的区别。Anaconda 管理包时还有图形界面,运作更加商业化。如果不想装太大的 Python 环境,更倾向于自己定制环境,推荐 Miniconda;如果是做深度学习、数据分析这行,也不想把包一个个安装,Anaconda 预装了基本所有该领域主流的包,更加方便。
在 Linux/Mac 系统里,Python 和 Conda 都是在终端运行的应用程序,即可以在终端敲 python conda,后面跟一系列子命令运行的。
安装后
安装过程不再叙述,基本就是“下一步、下一步、下一步、完成”。还要强调,安装了 Anaconda 或 Miniconda 就已经有了 Python,没必要单独去官网安装一个 Python 了。如果安装前就有一个 Python,官方文档说了,卸不卸载随意,只要能分的清。
以 Miniconda 在 MacOS 系统为例,安装完毕后,所有 Python (包括解释器 python.app )和 Conda 的文件全部默认都在用户目录 ~/Miniconda3/ 里面,管理的包也都在这里面。关于这个文件夹的文件是怎么组织的,见文档。
安装完毕后,Conda 会创建一个默认的环境 base,Mac 系统的命令行左边会出现一个 (base) 前缀,表示当前处在此环境中。conda 和 python 都已配置到环境变量中。
如何在指定的环境运行 Python 代码:
- 在终端中,激活此环境(让左边的括号变成此环境,相关命令见小节 3),运行
.py文件; - 在 IDE 如 VS Code 中,找一找图形界面里有地方可以选择环境(Python 解释器),选择后运行即可。
Conda 必备操作
Conda 作为一个包管理工具,最主要的逻辑就是一个两层的关系:上一层为环境,下一层为该环境里安装的包。所有必备操作(指实现此软件核心功能必须有的操作)都是围绕这两层进行的:
- 对环境的操作
- 检索:
conda info --envs - 创建:
conda create --name NAME python=x.x- 复制:
conda create --name NAME --clone XXX
- 复制:
- 切换:
conda activate NAME(conda deactivate等同于conda activate base) - 删除:
conda remove --name NAME --all
- 检索:
- 对包的操作
- 检索:
conda list - 安装:
conda install PACKAGE_NAME - 卸载:
conda remove PACKAGE_NAME
- 检索:
Conda 进阶操作
这些操作可能是非必需的,但能在效率上锦上添花。
- 对环境的操作
- 复制:在
conda create命令加选项--clone NAME
- 复制:在
- 其他全局操作
- 增加下载源:
conda config --add channels加 URL。在默认的境外下载源抽风时使用,推荐国内清华大学 TUNA 开源镜像。
- 增加下载源:
(待更新)