conda install 和 pip install的区别与联系

通常情况下交替使用即可,conda install失败就尝试一下pip install,反之亦然

区别如下

pip install 是Python官方推荐的包管理工具,通常用于安装Python
 Package Index(PyPI)托管的包。pip install可以安装wheels或源码
 格式的包,需要注意的是源码格式的包通常需要系统内安装了兼容
 的编译工具和所需要的库文件
conda install是一个跨平台的包和运行环境管理工具,其安装的包通常来自于
Anaconda repository和Anaconda Cloud。和pip install的包不同的是,
Conda包是二进制格式的,因此无需预先安装编译器。除此之外,Conda更强大
的地方在于其不仅可以安装Python包,还可以安装C(C++)、R语言包以及其他
语言编写的包等。
codna可以创建包含不同版本Python和Python包的虚拟环境,这在不同场景下需
要不同版本的工具时非常有用。而pip本身并不内置此种功能,反而需要依赖于
virtualenv和venv等工具
conda和pip在解决环境依赖的处理方式上也有所区别。pip install通过循环递归的
方式安装依赖,这一点我们可以理解为只要碰到没有安装的依赖包就进行安装,
直到安装完毕,很粗暴简单,但是随之带来的问题就是安装过程不稳定,比如安
装过程中先安装的软件包的依赖和后安装的软件包的依赖产生冲突,整个安装过
程就会崩坏。而conda使用SAT校验工具来检查当前环境下所有包的依赖是否匹
配,虽然耗时一些,但是更加稳定。

总结
目前流行的方式是同时使用pip install和conda install,因为有些包可能只能通过pip install,毕竟Anaconda repository仓库中仅有1500+的包(包含数据分析、机器学习、AI框架等),和拥有150000+的pip仓库还有具有量级的差别。哪种方式能安装你需要的包就用哪个!

我们在安装pystan和fbpropeht包时,涉及到了C++编译,因此必须要用conda安装。

你可能感兴趣的:(linux)