python 环境管理软件 conda
Conda 是一个开源的使用 Python 语言编写的软件包管理系统和环境管理系统,核心功能用于安装和处理多个版本的软件包及其依赖关系,能够创建一些虚拟的环境并能够在多个版本中来回切换
目前 Conda 的安装包主要有两种:Miniconda 和 Anconda。
- Anconda 是一个开源的 Python 发行版本,包含了 Conda、Python 等 180 多个科学包及其依赖项。
- Miniconda 是最小的 conda 安装环境,相当于 conda+python+pip,Miniconda 是个轻量级的 Conda 安装包,包内只有 Conda 相关的安装包。下载地址为 docs.conda.io/en/latest/miniconda.html#
两种安装包的主要区别是 Anconda 是一种 Python 的发行版,比 Miniconda 多了许多其他的依赖安装包,如 numpy 等常用的科学计算工具以及界面工具,因此 Anconda 更适合新手使用,并且这些依赖包都是提供给 Python 使用的,根据不同的实际使用情况,可以选择不同的 Conda 安装包进行安装
源设置
查看源
- 查看 conda 源是否配置成功,可以看出各 channel 的优先级(从上到下优先级依次增加)
1
conda config --get channels
- 查看 conda 源是否配置成功,可以看出各 channel 的优先级(从上到下优先级依次增加)
添加源
- 选其一添加即可
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24# 添加官方源
conda config --add channels r # R软件包
conda config --add channels conda-forge # Conda社区维护的不在默认通道中的软件
conda config --add channels bioconda # 生物信息学类工具
# 添加国内源头 (选其一添加即可)
# 添加中科大源
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/bioconda/
conda config --set show_channel_urls yes
# 添加清华大学源(偶尔抽风,此时需要换其他国内源)
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/bioconda/
conda config --set show_channel_urls yes
# 添加阿里云源
conda config --add channels https://mirrors.aliyun.com/anaconda/pkgs/free
conda config --add channels https://mirrors.aliyun.com/anaconda/pkgs/main
conda config --add channels https://mirrors.aliyun.com/anaconda/cloud/conda-forge
conda config --add channels https://mirrors.aliyun.com/anaconda/cloud/bioconda
conda config --set show_channel_urls yes - 也可以直接打开
C:User\xx\.condarc
文件添加以下内容1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17channels:
- 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
deepmodeling: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/
ssl_verify: false
- 选其一添加即可
删除源
- 即重置回初始源
1
2
3
4
5
6
7# 首先查看 channels
conda config --get channels
# 删除指定的 channels
conda config --remove channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/bioconda/
conda config --remove channels defaults
# 删除配置的所有镜像源
conda config --remove-key channels
- 即重置回初始源
环境管理
查看环境
- 查看当前存在的所有虚拟环境
1
conda env list 或者 conda info -e
- 查看当前存在的所有虚拟环境
创建环境
- 创建环境时可以指定安装包
1
conda create -n myenv numpy matplotlib python=3.7
- 创建环境时可以指定安装包
进入 / 退出环境
- 通过 activate、deactivate
1
2activate your_env_ name(虚拟环境名)
deactivate your_env_ name (虚拟环境名)
- 通过 activate、deactivate
删除环境
- 使用 remove 删除
1
conda remove -n your_enev_name --all ,即可删除
- 使用 remove 删除
导出导入环境配置
- 导出环境的配置
1
2
3
4
5# 导出环境配置
conda env export > 环境配置文件.yml
# 导入环境配置
conda env import -f 环境配置文件.yml
- 导出环境的配置
打包迁移环境
- 打包环境后迁移环境
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15# 打包环境
conda pack -n <env_name> -o <env_name>.tar.gz
# 迁移环境
# 将<env_name>.tar.gz上传到新机器
# 查看环境目录位置
conda info
# 解压到环境目录
cd /path/envs
mkdir <env_name>
tar -zxvf <env_name>.tar.gz -C <env_name>
# 激活
conda activate <env_name>
- 打包环境后迁移环境
包管理
查看包
- 查看环境中已经安装了的软件包
1
conda list
- 查看环境中已经安装了的软件包
安装包
- 通过 conda install 进行安装
1
2
3
4
5
6
7
8
9
10
11
12# 命令示例
conda install --help
# -y: yes
conda install requests -y
# -c: 临时增加一个 channel ,并且增加的 channels 会处于最高优先级
conda install -c bioconda presto
# 指定channel安装指定版本的python
conda install -c conda-forge python==1.0.1
# -vv: 显示下载过程中的详细日志,方便定位问题
conda install numpy -y -vv
# 后台下载
nohup conda install pandas -y &
- 通过 conda install 进行安装
删除包
- 使用 remove 或者 uninstall 删除
1
2conda remove XXX
pip uninstall XXX
- 使用 remove 或者 uninstall 删除