Conda是否取代了virtualenv?

我最近在安装SciPy之后发现了Conda ,特别是在我正在开发的Heroku应用程序中。

使用Conda可以创build与virtualenv非常类似的环境。 我的问题是:

  1. 如果我使用Conda,它将取代virtualenv的需要? 如果不是,我怎么一起使用这两个? 我在Conda中安装virtualenv,还是在virtualenv中安装Conda?
  2. 我还需要使用点吗? 如果是这样的话,我仍然可以在一个孤立的环境中安装pip软件包吗?
  1. Conda取代了virtualenv。 在我看来,这是更好的。 它不仅限于Python,也可以用于其他语言。 根据我的经验,它提供了更平滑的体验,特别是对于科学软件包。 我第一次在Mac上正确安装MayaVi的时候是conda。

  2. 你仍然可以使用pip 。 实际上, conda会在每个新的环境中安装pip 。 它知道pip安装的软件包。

例如:

 conda list 

列出当前环境中的所有已安装软件包。 Conda安装的软件包显示如下:

 sphinx_rtd_theme 0.1.7 py35_0 defaults 

和像这样通过pip安装的那些:

 wxpython-common 3.0.0.0 <pip> 

简单的答案是,你只需要conda。

  1. Conda将pip和virtualenv的function有效地结合在一个包中,所以如果您使用conda,则不需要virtualenv。

  2. 你会惊讶conda支持多less包。 如果还不够,可以在conda下使用pip。

这里是conda页面的链接,比较conda,pip和virtualenv: https ://conda.io/docs/commands.html#conda-vs-pip-vs-virtualenv-commands。

我将补充一点,conda创build和删除conda环境很简单。

 conda create --name <envname> python=<version> <optional dependencies> conda env remove --name <envname> 

这些环境与conda的pip-like包pipe理紧密相关,所以创build环境和安装Python和非Python包都很简单。 此外,从Anaconda 4.1起, 增加了与Jupyter笔记本集成的nbextensions,改善了可重现环境与工作叙述之间的翻译。

根据我的经验,安装numpypandas等大型图书馆的速度更快,更可靠。

是的,conda比virtualenv更容易安装,几乎取代了后者。