Conda [kɑndə] Conda 是一个开源的 Python 虚拟环境管理及包管理系统,用于安装多个版本的软件包及其依赖关系,并在它们之间轻松切换。Conda分为 Miniconda 与 Anaconda 两种,前者从名字上就能猜出是精简版(仅包含conda和 Python),后者预装了很多常用的库和数据科学包(约 500+ MB),大家可以根据自己使用需求来选择。
Conda 官网
速查手册
接下来假设你已经安装了 Miniconda 或 Anaconda
1. 创建虚拟环境
conda create --name myenv
# 创建并安装一个库
conda create -n myenv scipy=0.15.0
# 指定 python 版本
conda create --name py37 python=3.7
# 指定 Python 版本同时安装多个库
conda create -n myenv python=3.6 scipy=0.15.0 astroid babel
# 创建并指定虚拟环境所在路径
conda create --prefix ./envs jupyterlab=0.35 matplotlib=3.1 numpy=1.16
# 克隆一个环境(能快速复制现有的一个环境)--copy 表示复制,而不是软/硬链接
conda create --name myenv2 --clone myenv1
# -–clone 后面的不仅可以是环境的名字,也可以是环境的路径
conda create -n myenv2 --clone ~/path
# 根据已有的环境配置安装(配置文件中已保存虚拟环境名称、channels、dependencies)
conda env export > environment.yaml
conda env create -f environment.yaml
# 之后可以通过 conda env update -f environment.yaml 来更新环境包
conda env update -f environment.yaml
# 更新到指定名称的虚拟环境(my_new_env 没有则会自动创建, 可以用来同步一个环境)
conda env update -f environment.yml -n my_new_env
# 根据 spec-file.txt(文件中会保存包的具体url 只能复制环境中以conda install安装的包) 或 requirement.txt 文件安装
conda list --explicit > spec-file.txt
conda create --name myenv --file spec-file.txt
# -e, --export Output requirement string only
conda list -e > requirement.txt
conda create --name myenv --file requirement.txt
# -C, --use-index-cache 使用本地缓存的包安装(目的加速安装),注意和-c CHANNEL, --channel CHANNEL 区别
conda create -n myenv -C scipy=0.15.0
2. 更新虚拟环境库、依赖
conda info --envs
3. 查看虚拟环境信息
# 显示所有的虚拟环境列表
conda info --envs
# 查看当前虚拟环境信息
conda info
4. 恢复虚拟环境到某个历史版本
conda list --revisions
# 2020-01-04 21:48:08 (rev 0) 0为版本号
conda install --rev REVNUM
5. 移除虚拟环境
conda env remove --name myenv
6. packages 管理
# 在 conda 仓库中搜索包,看是否可用,不可用的话需要通过 pip 来安装
conda search scipy
# 安装 scipy 库
conda install scipy
# 安装库到指定的虚拟环境
conda install --name myenv scipy=0.15.0 curl=7.26.0
# 更新指定包
conda update scipy
# 从 spec-file 文件中安装,只能复制环境中以conda install安装的包)
conda install --name myenv --file spec-file.txt
# 从 requirement-file 文件中安装
conda create --name myenv --file requirement.txt
# 列出当前环境的包
conda list
# 移除包
conda remove scipy
7. 激活与取消激活环境
conda activate myenv
conda deactivate
8. 解决conda install 下载速度慢
添加清华anaconda镜像:
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --set show_channel_urls yes
9. conda 配置 .condarc
配置文件默认位置 <用户目录>/.condarc
官网配置说明
channels:
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r
- defaults
ssl_verify: true
如果 .condarc 没有,可先执行 conda config --set show_channel_urls yes 生成该文件之后再修改。
# 添加在 channels 列表前 优先级高
conda config --add channels new_channel
# 添加在 channels 列表后面 优先级低
conda config --append channels new_channel
10. 升级 anaconda
升级Anaconda需要先升级conda
conda update conda #基本升级
conda update anaconda #大的升级
conda update anaconda-navigator //update最新版本的anaconda-navigator
conda update python # 升级 python
11. 卸载 anaconda
rm -rf ~/anaconda //linux & mac os ~/opt/anaconda
建议清理下.bashrc中的Anaconda路径。
12. Mac os 初始化 conda
mac os 中如果安装过程如果没选 conda init ,则conda命令行工具不可用,当然也可以手动
source <path to conda>/bin/activate
conda init zsh
13. 命令模块 (-h, --help)
conda clean
conda config
conda create
conda info
conda install
conda list
conda package
conda remove
conda search
conda update
conda env
create 根据 environment file 创建虚拟环境
export 到出 environment file
list 列出所有虚拟环境
remove 移除某个虚拟环境
update 根据 environment file 更新虚拟环境库、包
最后
能用 conda install
按装的就不要用 pip 安装,不然在后面的环境移植过程中 pip 安装的包可能需要重新安装