整理Python中常用的conda命令操作

编辑: admin 分类: python 发布时间: 2021-12-24 来源:互联网

1 conda介绍

conda是一个python的包管理器,用来管理、安装、更新python的包和相关的依赖。另外,conda可以为特定任务创建独立的环境,每个环境中可以只安装需要用到的包和依赖,还可以将环境导出成yml文件,然后别人可以通过你导出的yml文件可以创建一样的环境。

1.1 查看版本

conda -V
#或
conda info

1.2 更新到当前版本

conda update conda

1.3 查看某个命令帮助文档

conda [command] --help

例如conda create --help

2 环境 (environment)

每个环境相当于一个独立的文件目录,目录下是已经安装了的包。切换到哪个环境,conda就会把包安装在哪个环境的目录下。默认的环境为base

2. 1 查看所有环境

conda info --envs

2.2 创建环境

#创建一个名为ENVNAME的环境
conda create --name ENVNAME

#创建一个名为ENVNAME的环境,并在该环境下包含某个版本的python
conda create --name ENVNAME python=3.9

#创建环境的同时,安装某个包
conda create --name ENVNAME python=3.9 PKG1 PKG2

--name也可以写作-n

例如conda create --name zyy创建了一个名为zyy的环境。通过命令conda list --name zyy查看zyy环境下有哪些包,可以发现此时该环境是空的,没有任何包。

2.3 激活和关闭环境

#激活ENVNAME环境
conda activate ENVNAME
#关闭退出当前环境
conda deactivate

2.4 查看某个环境下安装的包

#当前环境的包
conda list
#名为ENVNAME的环境的包
conda list --name ENVNAME
#或
conda list -n ENVNAME

2.5 删除环境

conda remove --name ENVNAME --all

2.6 导出环境到yml文件

#将ENVIRONMENT环境导出到env.yml文件中(包括所有安装的包以及依赖)
conda env export --name ENVIRONMENT > env.yml
#或
conda env export -n ENVIRONMENT > env.yml

#将ENVIRONMENT环境导出到env.yml文件中(不包括附带安装的依赖)
conda env export --from-history	 --name ENVIRONMENT > env.yml

2.7 根据yml文件创建环境

conda env create --file envname.yml
#或
conda env create -f envname.yml

2.8 环境变量设置

有时候在某个环境下需要设置环境变量。

查看当前的环境变量:conda env config vars list

设置环境变量:conda env config vars set my_var=value

取消环境变量:conda env config vars unset my_var

3 安装和卸载包

#在目前所在环境下安装名为PKG的包
conda install PKG

#在目前所在环境下安装某个版本的包
conda install PKG=3.1.4

#安装PKG包到指定环境ENVIRONMENT
conda install PKG --name ENVIRONMENT
#或
conda install PKG -n ENVIRONMENT

#从名字为CHANNEL的源中安装名字为PKG包
conda install PKG --channel CHANNEL

#从当前环境卸载某个包
conda uninstall PKG

#卸载指定环境中的某个包
conda uninstall PKG --name ENVIRONMENT

4 源 (channel)

conda的channel就是各个python包所在的远程地址,中文常常称作"源"。python的包存放在某个channel中,然后每个人在安装某个package的时候,此package便通过网络从远程的channel下载到本地然后安装到当前的环境(environment)中。

默认channel是 https://repo.anaconda.com/pkgs/,可能会收费。而conda-forge是免费的。

4.1 查看channel:

conda config --show

输入上述命令后,可以在命令行看到下列结果,发现只有两个channels,一个是conda-forge,一个是defaults。可以看到default_channels来源有两个:https://repo.anaconda.com/pkgs/main和https://repo.anaconda.com/pkgs/r

命令conda config --show除了显示channels之外,还会显示别的配置,如果只需要查看channels及其优先级,可以用

conda config --get channels

在这里插入图片描述

4.2 添加channel:

#在channel list最上面添加channel,使其优先级最高
conda config --prepend channels CHANNEL
#或
conda config --add channels CHANNEL

#在channel list最下方添加channel,使其优先级最低
conda config --append channels CHANNEL

添加北外镜像的源:

conda config --add channels https://mirrors.bfsu.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.bfsu.edu.cn/anaconda/pkgs/main/
#Conda Forge
conda config --add channels https://mirrors.bfsu.edu.cn/anaconda/cloud/conda-forge/
#pytorch
conda config --add channels https://mirrors.bfsu.edu.cn/anaconda/cloud/pytorch/

添加之后,再看看有没有添加成功,conda config --get channels

在这里插入图片描述

除了defaults和conda-forge,还多了四个我们刚刚添加的源,说明添加成功。

4.3 删除channel

conda config --remove channels CHANNEL

例如,刚刚添加了北外镜像的源,现在我们来删掉:

conda config --remove channels https://mirrors.bfsu.edu.cn/anaconda/pkgs/free/
conda config --remove channels https://mirrors.bfsu.edu.cn/anaconda/pkgs/main/
conda config --remove channels https://mirrors.bfsu.edu.cn/anaconda/cloud/conda-forge/
conda config --remove channels https://mirrors.bfsu.edu.cn/anaconda/cloud/pytorch/

再次查看当前的channels, conda config --get channels

5 一个完整示例

查看channel

conda config --get channels

在这里插入图片描述

添加北外的源:

conda config --add channels https://mirrors.bfsu.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.bfsu.edu.cn/anaconda/pkgs/main/
conda config --add channels https://mirrors.bfsu.edu.cn/anaconda/cloud/conda-forge/
conda config --add channels https://mirrors.bfsu.edu.cn/anaconda/cloud/pytorch/

查看现在的channel

在这里插入图片描述

查看当前系统有多少个环境

conda env list

显示:

在这里插入图片描述

表明现在只有一个base环境。

创建新环境zyy,并且同时安装python3.9, matplotlib, numpy, netcdf4

conda create --name zyy python=3.9 matplotlib numpy netcdf4

在这里插入图片描述

Proceed ([y]/n)?输入 y继续。然后开始安装包和相关的依赖。

最后显示:

在这里插入图片描述

表明环境创建成功。

然后切换到zyy环境:

conda activate zyy

在这里插入图片描述

切换环境后,发现前面括号中的内容已经由(base)变为(zyy)。

然后查看系统中存在哪些环境:

conda env list

接着导出当前环境

conda env export --name zyy --from-history my_env.yml

my_env.yml内容如下:

在这里插入图片描述

接下来我们看如何从已有的yml文件中导入环境。

conda env create --file my_env.yml

显示这个错误: CondaValueError: prefix already exists: /home/yyzhong/anaconda3/envs/zyy

因为zyy环境已经存在了。为此,我们可以先把my_env.yml第一行中的zyy改称zyy2。然后

conda env create --file my_env.yml

然后通过

conda env list

可以看到,现在存在3个环境了。

到此这篇关于整理Python中常用的conda命令行操作的文章就介绍到这了,更多相关conda命令行常用操作内容请搜索hwidc以前的文章或继续浏览下面的相关文章希望大家以后多多支持hwidc!

【本文来自:由专业的香港高防服务器转发】