conda的好处

  • conda: python虚拟环境管理工具,其中一个功能是安装python包。
  • pip: python的包管理工具,可以用于安装python包。
  • miniconda: conda的压缩包,自带了一个名为base的虚拟环境,这个虚拟环境里只安装了python和几个必要的库。
  • anaconda:conda的压缩包。自带了一个名为base的虚拟环境,这个虚拟环境里安装了很多和数据处理有关的python包。

比如我们今天要跑一个开源仓库,该仓库依赖了python2.7和torch0.4,而你又不想把你现在环境中的torch1.7降为torch0.4,毕竟只有这一个工程需要torch0.4。而且你的环境是python3.6,难道你要为了这个工程再去装个python2.7吗?此时,你可以执行如下操作

conda create -n py27 python=2.7
conda activate py27
pip install torch==0.4

等你执行完了这个程序,你想回到原来的python,只需要执行

conda deactivate 

就会回到你之前的环境。你在py27这个环境里安装的一切包,不管是pip还是conda安装的,都不会影响你当前的环境。

另外,尽管conda和pip都提供了安装python包的功能,但两者的源并不重合。两者各自维护自己的源。conda源中包含了包含了很多非python的包,比如gcc,nodejs,cuda,都可以用conda来安装和管理。因此很多时候你没得选。比如有个工程需要torch0.4,而torch0.4依赖了cuda9.0。而你电脑里只有cuda11.0,你难道要再去网上下个cuda9.0吗?此时你只需要使用

conda install cudatoolkit=9.0

解决了cuda版本问题,不香吗?pip是不会托管cudatoolkit这种包的,因此这时conda和pip配合使用就是最好的解决方案。

质疑浪费空间的,miniconda安装包也就50多M(里面带了一个python),比python安装包大不了多少,但能让你有机的组织起任意多个python环境来。为何不用呢?

你可能感兴趣的:(系统网络,工程开发)