去年我在调研AIGC软件的时候,遇到有一些项目需要用到conda安装库。不过用得比较少,而且用pip也完全可以胜任,我就没有特意去学。不过这种事情吧……大刘说了,这玩意就像埋在后院里的尸体,埋得再深也没用,睡不好觉。早晚有一天你得把它挖出来,扔得远远的。 最近做的项目中,有一些环境就是Anaconda搭建的,由于系统的原因,我安装virtualenvwrapper时候总是报错。我也懒得一点点排查了,于是正好借助这个机会学了一下conda。 简单来说,conda就是一个python的包管理器,我需要用到的它的功能主要有两方面,一方面是虚拟环境的管理,另一方面是第三方包的管理。conda主要有两种,Anaconda和miniconda,功能差不多,只不过Anaconda内置装好了很多第三方包,的确是比miniconda要用起来更方便一点。 但是,鉴于Anaconda所属公司最近到处发律师函,我觉得还是慎用。如果没有钱购买正版,就还是乖乖用miniconda吧。 miniconda在官方网站和清华的镜像站都可以下载,为了下载速度快一些,我是在镜像站下载的。 清华镜像站的地址:https://mirrors.tuna.tsinghua.edu.cn/anaconda/miniconda/
注意要看好了具体版本哦!要关注python的版本(3.x,再细划的小版本就不需要了),操作系统(Windows/MAC/Linux),还有具体的系统架构(x86_64(Intel或AMD)和aarch64(ARM))。 选择好了需要的miniconda版本,下载下来其实是个.sh文件。需要先给他执行权限
chmod 755 Miniconda3-py311_24.4.0-0-Linux-aarch64.sh
(别原封不动地复制哈,看自己下载的文件名) 然后执行
./Miniconda3-py311_24.4.0-0-Linux-aarch64.sh
跳出一堆说明,一路空格到最后,yes同意。选择目录我这里是默认的,可以自己设置。 等了一会儿安装完成,但好像自动初始化没成功,因为我这里命令提示符前面直接就是名字,没有括号,说明conda没有初始化。这时候用conda相关命令是不成功的,都会提示command not found。但我发现安装的最后有一句提示:
eval "$(/home/ubuntu/miniconda3/bin/conda shell.YOUR_SHELL_NAME hook)" # 注意这里 YOUR_SHELL_NAME 应该替换为 bash ,可不是你的用户名
执行完果然名字前面多了个(base)。再执行一下
conda init
做一下初始化就好啦。也可以用
conda env list
查看一下当前已经安装的虚拟环境:
跟virtualenvwrapper的workon命令类似。 接下来我们配配置一下conda源。这很好理解,类似于pip源,通过国内镜像源下载安装包速度能快一些。这里使用的仍然是清华的源(pip我也爱用清华源,不过这只是使用习惯,用阿里之类的源也可以)。添加镜像源:
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/ conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/ conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r/ conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/pro/ conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/msys2/
这样就把miniconda配置完成了,可以使用了。 其实miniconda的使用还是很直接明了的,会用virtualenv和pip的话conda也会很容易理解和上手。我就不详细把每个conda命令列出来了,只列一些常用的吧:
虚拟环境相关 | |
查看虚拟环境 | conda env list |
创建虚拟环境 | conda create -n env python=3.11 |
复制虚拟环境 | conda create --name new_conda_name --clone old_conda_name |
删除虚拟环境 | conda remove -n env --all |
进入虚拟环境 | conda activate env |
退出虚拟环境 | conda deactivate |
包管理相关 | |
查看包列表 | conda list |
安装包 | conda install package=1.11.1 |
包升级 | conda update package |
搜索包 | conda search package |
删除包 | conda remove package |