Anaconda使用总结
背景:Anaconda作为深度学习最流行的pipeline之一,可以方便的修改和导出学习环境,每次跑代码配环境总是一件令人头大的事情。之前一直没有好好研究Anaconda的用法,导致每次使用的时候一些简单的命令都需要现场查询,所以想着把一些常见的用法和命令固化,希望能够帮到大家,也作为自己以后的一个查阅的依据。
配合Pycharm使用
当把代码拉到本地之后,要给代码创建或者分配一个解释器:
在设置的解释器中,这里可以选择已有的解释其,也可以点右边的齿轮按钮选择新建一个新的解释器。
打开之后,选择Conda环境,接下来要选择Python环境,非常重要,一定要看好大部分需要的包支持的版本或者代码requirement里要求的环境,因为虽然装完所有包之后,再换python的版本会导致很多包需要重新装或者冲突,虽然conda可以解决一部分这个问题,但还是比较麻烦的,所以一定看好。
配置了解释器之后,再打开pycharm下面的终端,可以看到已经进入了conda环境。可以直接使用了。
conda命令
conda操作
更新conda版本: conda update conda
升级anaconda: conda update anaconda
查询conda信息: conda info
查询conda安装的包:conda list
环境操作
显示所有的环境:conda env list
查看环境信息:conda info --envs
创建虚拟环境:conda create -n 环境名字 python=指定python版本
复制已有的环境:conda create --name new_env --clone old_env
进入创建的虚拟环境:conda activate 环境名字
删除环境:conda env remove -n 环境名字 --all
退出当前环境:conda deactivate
包管理
Anaconda源下载包:
# 搜索安装包
anaconda search -t conda tensorflow-gpu
# 括号内的为上传者的名字和包名
anaconda show (cjj3779/tensorflow-gpu)
# 搜索出的结果的最后一句话
conda install --channel https://conda.anaconda.org/cjj3779 tensorflow-gpu
whl文件本地安装
从pypi下载whl包:https://pypi.org/
里面有release history可以找到老版本
以opencv-python为例:
接下来进入下载页面,需要注意的有几个点:
- cp37:python3.7
- arm64:64位计算机系统使用
- win32:32位系统
- manylinux:linux系统使用
一定要看好符合自己环境的包和系统再下载
下载到本地之后,进入想装该包的环境之后,输入命令:
pip install C:\Users\cbx\Desktop\ opencv_python-4.5.5.62-cp37-abi3-macosx_11_0_arm64.whl
后面的路径是whl的路径
另外,除了pypi的下载路径之外,可以看一下anaconda的下载源,链接如下anaconda搜索链接,例如搜索Pytorch
Github源安装
setup.py是什么
setup.py是Python脚本,通常随该语言编写的库或程序一起提供。
目的是正确安装库或程序。
许多软件包将distutils框架与setup.py结合使用。
setup.py告诉您要安装的模块/软件包已与Distutils打包并分发,
Distutils是分发Python模块的标准。
操作过程:
- 将github包拉到本地,解压到文件夹中,复制路径
- activate激活环境
- 进入文件所在目录
python setup.py install
PIP和Conda
在安装的时候,有pip install xxxx
和conda install xxxxx
,本质上来讲,pip屎python安装包的方法,conda是anaconda安装包的方法。
总结如下:
-
远程仓库不同(源不同)。pip的仓库里有150,000多个包,conda只有1500多个。当然,我们用的时候肯定不用这个默认的远程仓库,都替换成国内的阿里源、清华源了。
-
可装包范围不同
pip是一个纯粹的管理和安装python库的工具;而conda不仅仅可以安装python库,一些依赖的c/c++库或者其他语言库,也是可以一并安装的。
- 依赖处理的逻辑不同
虽然两者都会校验依赖,但是校验的逻辑和方法是不同的。pip是按顺序一个一个检查,如果安装第一个库时,引入了第二个库不兼容的库,那么安装第二个库的时候,就会存在问题;而conda是在执行命令时,对所需安装的库做统一的兼容检查,以安装最合适的版本。
conda换源
condarc这个配置文件(文件在用户目录下,我的在C:\Users\用户名称.condarc),永久性配置镜像源(清华源)。更改后内容如下:
channels:
- defaults
show_channel_urls: true
channel_alias: https://mirrors.tuna.tsinghua.edu.cn/anaconda
default_channels:
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/pro
- 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
simpleitk: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
更改完成后,在命令行输入以下命令完成配置的更新:
conda config --set show_channel_urls yes
其他
安装完整的pytorch
conda install pytorch torchvision torchaudio cpuonly -c pytorch
pytorch的原始版本在conda里面可以比较方便的安装,可以参考官网的安装脚本代码,可以做到匹配torch和torchvision和cuda的版本,具体网址如下:pytorch官网安装代码查询