Conda手册
📘 简介
Conda 是一个开源的包管理和环境管理系统,适用于 Python、R、Ruby、Lua、Scala、Java、JavaScript、C/C++、FORTRAN 等多种语言。
- Anaconda:完整的数据科学平台,包含 Conda 及大量预装包(约3GB)
- Miniconda:轻量级版本,只包含 Conda 和 Python(约400MB)
🔧 环境管理
创建环境
创建一个新的 Python 环境:
1 | conda create -n myenv python=3.9 |
说明:创建名为 myenv 的环境,指定 Python 版本为 3.9
创建环境并安装指定包:
1 | conda create -n myenv python=3.9 numpy pandas |
说明:创建环境的同时安装 numpy 和 pandas 包
从配置文件创建环境:
1 | conda env create -f environment.yml |
说明:根据 environment.yml 文件创建环境
激活和退出环境
激活环境:
1 | conda activate myenv |
说明:激活名为 myenv 的环境
退出当前环境:
1 | conda deactivate |
说明:退出当前激活的环境,返回到 base 环境
查看环境
列出所有环境:
1 | conda env list |
说明:显示所有已创建的环境及其路径
或者使用:
1 | conda info --envs |
说明:与 conda env list 功能相同
查看当前环境信息:
1 | conda info |
说明:显示 Conda 的详细配置信息
删除环境
删除指定环境:
1 | conda remove -n myenv --all |
说明:完全删除名为 myenv 的环境及其所有包
或者使用:
1 | conda env remove -n myenv |
说明:删除指定环境的另一种方式
克隆环境
克隆已有环境:
1 | conda create -n newenv --clone myenv |
说明:创建 myenv 的副本,命名为 newenv
导出和导入环境
导出环境配置:
1 | conda env export > environment.yml |
说明:将当前环境的配置导出到 environment.yml 文件
导出跨平台兼容的配置:
1 | conda env export --from-history > environment.yml |
说明:只导出手动安装的包,提高跨平台兼容性
📦 包管理
安装包
在当前环境安装包:
1 | conda install numpy |
说明:在当前激活的环境中安装 numpy 包
在指定环境安装包:
1 | conda install -n myenv numpy |
说明:在 myenv 环境中安装 numpy 包
安装指定版本的包:
1 | conda install numpy=1.20.0 |
说明:安装特定版本的 numpy
从指定频道安装包:
1 | conda install -c conda-forge package_name |
说明:从 conda-forge 频道安装包
安装多个包:
1 | conda install numpy pandas matplotlib |
说明:一次性安装多个包
更新包
更新指定包:
1 | conda update numpy |
说明:将 numpy 更新到最新版本
更新所有包:
1 | conda update --all |
说明:更新当前环境中的所有包
更新 Conda 自身:
1 | conda update conda |
说明:更新 Conda 到最新版本
更新 Anaconda:
1 | conda update anaconda |
说明:更新整个 Anaconda 发行版
卸载包
卸载指定包:
1 | conda remove numpy |
说明:从当前环境中卸载 numpy 包
从指定环境卸载包:
1 | conda remove -n myenv numpy |
说明:从 myenv 环境中卸载 numpy 包
查看包
列出当前环境的所有包:
1 | conda list |
说明:显示当前环境中已安装的所有包及版本
列出指定环境的包:
1 | conda list -n myenv |
说明:显示 myenv 环境中的所有包
搜索包:
1 | conda search numpy |
说明:搜索可用的 numpy 包及其版本
查看包的详细信息:
1 | conda info numpy |
说明:显示 numpy 包的详细信息
⚙️ 配置管理
频道管理
查看当前频道:
1 | conda config --show channels |
说明:显示已配置的所有频道
添加频道:
1 | conda config --add channels conda-forge |
说明:添加 conda-forge 频道
移除频道:
1 | conda config --remove channels conda-forge |
说明:移除 conda-forge 频道
设置频道优先级:
1 | conda config --set channel_priority strict |
说明:设置严格的频道优先级策略
配置国内镜像源(提速)
配置清华镜像源:
1 | conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main |
说明:添加清华大学 Anaconda 镜像源,加速下载
配置中科大镜像源:
1 | conda config --add channels https://mirrors.ustc.edu.cn/anaconda/pkgs/main/ |
说明:添加中科大 Anaconda 镜像源
恢复默认源:
1 | conda config --remove-key channels |
说明:删除自定义频道配置,恢复默认设置
其他配置
查看所有配置:
1 | conda config --show |
说明:显示所有 Conda 配置项
设置安装包时自动确认:
1 | conda config --set always_yes true |
说明:安装包时不再需要手动确认
关闭自动确认:
1 | conda config --set always_yes false |
说明:恢复安装时的确认提示
🧹 清理和维护
清理未使用的包和缓存:
1 | conda clean --all |
说明:清理所有缓存、未使用的包和 tar 包
只清理缓存:
1 | conda clean --packages |
说明:只清理包缓存
只清理 tar 包:
1 | conda clean --tarballs |
说明:只清理下载的 tar 包
清理索引缓存:
1 | conda clean --index-cache |
说明:清理索引缓存文件
🔍 信息查询
查看 Conda 版本:
1 | conda --version |
说明:显示当前 Conda 的版本号
查看 Python 版本:
1 | python --version |
说明:显示当前环境中 Python 的版本
查看环境中 Python 路径:
1 | which python |
说明:显示当前使用的 Python 解释器路径(Linux/Mac)
Windows 系统查看 Python 路径:
1 | where python |
说明:显示当前使用的 Python 解释器路径(Windows)
📝 environment.yml 示例
创建一个标准的环境配置文件:
1 | name: myenv |
说明:
name:环境名称channels:包来源频道dependencies:依赖包列表pip:通过 pip 安装的包
🚀 常用组合命令
快速创建并激活环境
1 | conda create -n myenv python=3.9 -y && conda activate myenv |
说明:创建环境后自动激活(-y 表示自动确认)
导出并备份环境
1 | conda env export --from-history > environment_$(date +%Y%m%d).yml |
说明:导出环境配置并添加日期标记(Linux/Mac)
批量更新并清理
1 | conda update --all -y && conda clean --all -y |
说明:更新所有包后清理缓存
💡 最佳实践
1. 环境隔离
为每个项目创建独立的环境,避免包版本冲突:
1 | conda create -n project1 python=3.9 |
2. 使用 environment.yml
通过配置文件管理项目依赖,便于团队协作和环境复现:
1 | # 导出 |
3. 定期清理
定期清理缓存和未使用的包,释放磁盘空间:
1 | conda clean --all |
4. 配置镜像源
使用国内镜像源提高下载速度,特别是在网络环境较差时。
5. 使用虚拟环境而非 base
不要在 base 环境中安装项目依赖,保持 base 环境的纯净:
1 | # ❌ 不推荐 |
🆚 Conda vs Pip
| 特性 | Conda | Pip |
|---|---|---|
| 包管理 | ✅ | ✅ |
| 环境管理 | ✅ | ❌(需配合venv) |
| 语言支持 | 多语言 | 仅 Python |
| 依赖解析 | 更强 | 较弱 |
| 包来源 | Anaconda 仓库 | PyPI |
| 二进制包 | ✅ | 部分支持 |
建议:优先使用 Conda 管理环境和安装包,如果 Conda 中没有的包再使用 Pip 安装。
🔗 相关资源
⚠️ 常见问题
1. conda 命令找不到
解决方法:将 Conda 添加到系统环境变量 PATH 中。
2. 环境激活失败
解决方法:
1 | conda init bash # Linux/Mac |
然后重启终端。
3. 包冲突
解决方法:创建新环境或使用 conda install --force-reinstall 强制重装。
4. 下载速度慢
解决方法:配置国内镜像源(见上文”配置国内镜像源”部分)。
📌 总结
Conda 是一个强大的包和环境管理工具,掌握其常用命令可以大大提高开发效率。建议:
- ✅ 为每个项目创建独立环境
- ✅ 使用
environment.yml管理依赖 - ✅ 定期更新和清理
- ✅ 配置镜像源提速
- ✅ 保持 base 环境的纯净
💡 提示:本文所有命令代码块都支持一键复制,点击代码块右上角的复制按钮即可快速使用!
📖 推荐阅读:


