Conda环境管理及Mamba

在使用Anaconda或Miniconda时,可以方便地使用conda进行环境管理,针对不同的包设定特定的环境,避免所依赖模块之间的冲突。

首先安装Miniconda作为基础环境(base),建议不要在此环境中安装其它额外的包。

后续操作如下:

1
2
3
4
5
6
7
8
9
10
11
# 创建环境
conda create -n envName python=3.9 biopython
# -n envName 后面可以指定需要安装的包,以及版本,甚至是 python 的版本

conda create -n envName --clone envold # 复制环境

conda env list # 列出所有的环境
conda env remove -n envName # 删除某个环境

source activate envName # 切换到某个环境
source deactivate

很多时候会发现conda安装包的速度非常慢,可以使用mamba替代conda,速度会快很多!

Notes:
1. mamba的安装有两种方式,第一种是直接在现有的base环境中通过conda install mamba安装;第二种是从github中下载与操作系统相对应的Mambaforge,Mambaforge本身会包含python base环境,相当于安装了Miniconda。
2. 后续使用时,只需将原本使用的conda命令替换为mamba命令即可,例如mamba install xxx,会发现速度提高了很多倍。
3. 其它有用的地方:

1
2
3
4
5
6
7
8
9
10
11
12
13
# 搜索xtensor所在的channel 
mamba repoquery search xtensor # "xtensor>=0.18" 指定版本

# 查询xtensor的直接依赖
mamba repoquery depends xtensor
mamba repoquery depends xtensor --recursive # including dependencies of dependencies
mamba repoquery depends -t xtensor # --tree 显示为依赖树的形式

# 查询哪些包依赖于xtensor
mamba repoquery whoneeds xtensor
mamba repoquery whoneeds -t xtensor # --tree 显示为依赖树的形式

# 以上查询depends 和 whoneeds需要本地已安装被查询的包,或者通过 -c(--channel) 指定此包所在的channel