pip与 conda的区别

举报
一颗小树x 发表于 2020/12/04 00:43:31 2020/12/04
【摘要】                                                pip与conda的区别   python的包管理工具为什么有了pip 我们还需要conda?   之前一直使用conda和pip ,有时候经常会两者混用。但是今天才发现二者装的东西不是在一个地方的,所以发现有的东西自己装了,但是在运行环境的时候发现包老是识别不了,一直都特别疑...

                                               pip与conda的区别

 

python的包管理工具为什么有了pip 我们还需要conda? 

 之前一直使用conda和pip ,有时候经常会两者混用。但是今天才发现二者装的东西不是在一个地方的,所以发现有的东西自己装了,但是在运行环境的时候发现包老是识别不了,一直都特别疑惑,直到今天注意到这个问题,所以来总结一下二者的区别。

 

简短的概要:

pip

  • pip专门管理Python包
  • 编译源码中的所有内容(源码安装)
  • 由核心Python社区所支持(即,Python 3.4+包含可自动增强pip的代码)。

conda

  • Python不可知论者。 现有软件包的主要重点是Python,而conda本身是用Python编写的,但你也可以为C库或R软件包或任何其他软件包提供conda软件包。
  • 安装二进制文件。 有一个名为conda build的工具,它可以从源代码构建软件包,但conda install本身会安装已经构建的conda软件包中的东西。

 

  • 外部。 Conda是Anaconda的包管理器,由Continuum Analytics提供的Python发行版,但它也可以在Anaconda之外使用。 您可以使用现有的Python安装,通过pip安装它(尽管除非您有充分理由使用现有安装,否则不建议这样做)。

 

进一步来说:

  • conda可以让你同时管理安装处理有关的python任务和跟python无关任务即pip可以允许在任何环境中安装python包,conda允许你在conda环境中安装任何语言包(包括C语言或者python)。
  • conda使用一个新的包格式,你不能交替使用conda和pip,
  •  
  • 因为pip不能安装和解析conda的包格式。可以使用这两个工具,但是它们是不能交互的

 

  •   由于pip是从源代码安装的,所以如果你无法编译源代码,那么安装它可能会很痛苦(这在Windows上尤其如此,但如果软件包有一些困难的C或FORTRAN库,甚至在Linux上也是如此)依赖)。

 

  • Conda从二进制文件安装,这意味着有人(例如Continuum)已经完成了编译软件包的艰苦工作,因此安装非常简单。不过,个人感觉conda安装有些慢。(相对pip 来说)

 

  • 如果您有兴趣构建自己的软件包,也有一些差异。 例如,pip建立在setuptools之上,而conda使用它自己的格式,这有一些优点(比如静态,而且Python不可知)。
  •  

附:conda环境的启动命令:

启动:source activate xxx

关闭:source deactivate

更新:conda env update -f environment .yml   (更新配置文件)

 

希望对你有帮助。

 

 

 

文章来源: guo-pu.blog.csdn.net,作者:一颗小树x,版权归原作者所有,如需转载,请联系作者。

原文链接:guo-pu.blog.csdn.net/article/details/86530217

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。