Python中有哪些常用的conda命令,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
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
关于Python中有哪些常用的conda命令问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注天达云行业资讯频道了解更多相关知识。