跳到主要内容

Conda

特点​

  • 跨平台的语言和软件包管理器
  • 不仅支持 Python,还支持 R、Ruby、Lua 等
  • 内置虚拟环境管理(conda env)
  • 数据科学领域的事实标准(Anaconda / Miniconda)
  • 支持二进制包分发,无需编译

环境变量配置​

~/Anaconda #(Python需要)
~/Anaconda/Scripts #(conda自带脚本)
~/Anaconda/Library/mingw-w64/bin #(使用C with python的时候)
~/Anaconda/Library/usr/bin
~/Anaconda/Library/bin #(jupyter notebook动态库)

conda 信息​

如何检查?cmd 中输入 python 回车,conda --version 回车,conda info 回车

conda 环境管理​

创建环境

# 创建环境
conda create --name {env_name} [python==3.10]
conda create --name 环境名 # 可以使用中文名

# 重命名环境
conda rename --name 旧环境名 -d 新环境名

# 删除环境
# 第一步:退出环境
conda deactivate
# 第二步:删除环境
conda remove -n {env_name} --all
# 或者
conda env remove -name 环境名

# 环境迁移/环境克隆
conda create --name {新环境名字} --clone {被克隆的环境名}

# 查看当前环境
conda env list
conda info -e

# 导出已有环境
conda env export > environment.yaml

# 根据配置文件创建环境
conda env create -f environment.yaml

# 顺便贴个pip的 导出/加载
pip freeze > requirements.txt
pip install -r requirements.txt

# 激活环境
conda activate {环境名}

conda 查看/激活环境​

conda info --envs
activate {env_name} # 主环境叫 base

conda 升级​

conda update -n base -c defaults conda

conda 换源​

# 显示源
conda config --show channels
conda config --show-sources
# 添加中科大源
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/pkgs/main/
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge/
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/cloud/msys2/
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/cloud/bioconda/
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/cloud/menpo/
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/cloud/
# 删除中科大源
conda config --remove channels https://mirrors.ustc.edu.cn/anaconda/pkgs/main/
conda config --remove channels https://mirrors.ustc.edu.cn/anaconda/pkgs/free/
conda config --remove channels https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge/
conda config --remove channels https://mirrors.ustc.edu.cn/anaconda/cloud/msys2/
conda config --remove channels https://mirrors.ustc.edu.cn/anaconda/cloud/bioconda/
conda config --remove channels https://mirrors.ustc.edu.cn/anaconda/cloud/menpo/
conda config --remove channels https://mirrors.ustc.edu.cn/anaconda/cloud/

conda 配置文件​

或者在 ~/.condarc 中直接修改

channels:
- defaults
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
simpleitk: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
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
show_channel_urls: True

本地离线安装​

conda install --use-local [package_name]
# 比如 conda install --use-local pytorch-1.2.0-py3.5_cuda100_cudnn7_1.tar.bz2

版本​

conda -V

帮助​

conda --help

conda 包管理​

# 查看当前环境下的所有包
conda list

# 搜索包
conda search tqdm
conda search tqdm=4.65
# 安装包
conda install 包名
# 删除包
conda uninstall 包名
# 给指定环境安装包
conda install -n 环境名 -c 渠道名 包名
# 寻找不同渠道的包(Channel
conda search -c conda-forge
conda search -c conda-forge mkdocs

conda 重置环境​

FAQ​

conda 环境问题

参考资料​