8、conda

conda分为三类

  1. conda:是一种通用包管理系统,旨在构建和管理任何语言和任何类型的软件。举个例子:包管理与pip的使用类似,环境管理则允许用户方便地安装不同版本的python并可以快速切换。
  2. Anaconda:则是一个打包的集合,里面预装好了conda、某个版本的python、众多packages、科学计算工具等等,就是把很多常用的不常用的库都给你装好了。
  3. Miniconda:,顾名思义,它只包含最基本的内容——python与conda,以及相关的必须依赖项,对于空间要求严格的用户,Miniconda是一种选择。就只包含最基本的东西,其他的库得自己装

为什么使用Miniconda

  1. 安装python便捷。无论是在win还是linux环境下,miniconda都是傻瓜式的安装方式,一路next即可,而不需要编译源码。
  2. 方便的python库管理。conda在安装python包时会自动处理依赖包,只需要点确定就可以了。尤其是在安装opencv,TensorFlow等依赖较为复杂的包的时候,使用pip会需要手动处理很多依赖项,编译很多软件包,而conda不需要。conda甚至可以修改当前python的版本。
  3. 方便的python虚拟环境管理。conda命令可以方便的创建和删除python的虚拟环境。否则需要自己安装virtualenv等python包。
  4. Anaconda作为一个python发行版携带了很多科学计算的python包,但它太大了,有些包也不需要。而miniconda就小得多,只携带了conda所必须的依赖包。

安装

下载地址:https://docs.conda.io/en/latest/miniconda.html

windows

安装比较简单,没什么说的

安装完成后需要配置环境变量到系统PATH

安装路径\Miniconda3 
安装路径\Miniconda3\Scripts
安装路径\Miniconda3\Library\bin 

输入命令conda -V验证即可

配置镜像

参考:https://mirrors.tuna.tsinghua.edu.cn/help/anaconda/

各系统都可以通过修改用户目录下的 .condarc 文件来使用 TUNA 镜像源。Windows 用户无法直接创建名为 .condarc 的文件,可先执行 conda config --set show_channel_urls yes 生成该文件之后再修改。

channels:
  - defaults
show_channel_urls: true
default_channels:
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/msys2
custom_channels:
  conda-forge: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  msys2: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  bioconda: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  menpo: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  pytorch: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  pytorch-lts: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  simpleitk: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud

运行 conda clean -i 清除索引缓存,保证用的是镜像站提供的索引。

也可以通过命令添加镜像:conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/msys2/

常用命令

 #查看conda版本,验证是否安装
conda --version
#更新至最新版本,也会更新其它相关包
conda update conda 
#更新所有包
conda update --all 
#更新指定的包
conda update package_name 
#创建名为env_name的新环境,并指定python环境为3.8
conda create -n env_name package_name python=3.8 
#切换至env_name环境
conda activate env_name 
#退出环境
conda deactivate 
#显示所有已经创建的环境
conda info -e
conda env list
#复制old_env_name为new_env_name
conda create --name new_env_name --clone old_env_name 
#删除环境
conda remove --name env_name –all
#查看所有已经安装的包
conda list 
#在当前环境中安装包
conda install package_name 
#在指定环境中安装包
conda install --name env_name package_name 
#删除指定环境中的包
conda remove --name env_name package 
#删除当前环境中的包
conda remove package 
#采用conda remove --name 删除环境失败时,可采用这种方法
conda env remove -n env_name