提问者:小点点

康达是否取代了对虚拟电视的需求?


我最近在安装SciPy时遇到问题,特别是在我正在开发的Heroku应用程序上,发现了Conda。

使用Conda,您可以创建环境,非常类似于虚拟环境。我的问题是:

  1. 如果我使用Conda,它会取代对virtualenv的需求吗?如果没有,如何将两者结合使用?我是在Conda中安装virtualenv,还是在virtualenv中安装Conda

共3个答案

匿名用户

>

  • Conda取代了Virtualenv。在我看来更好。它不仅限于Python,也可以用于其他语言。根据我的经验,它提供了更流畅的体验,尤其是对于科学包。我第一次在Mac上正确安装MayaVi是使用conda

    您仍然可以使用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有效地将pip和Virtualenv的功能结合在一个包中,因此如果您使用conda,则不需要Virtualenv。

    您可能会惊讶于conda支持多少包。如果还不够,可以在conda下使用pip。

    以下是一个链接,指向比较conda、pip和virtualenv的conda页面:

    https://docs.conda.io/projects/conda/en/latest/commands.html#conda-vs pip vs virtualenv命令。

  • 匿名用户

    我同时使用和(截至2020年1月),它们有一些表面上的差异,对我来说有不同的用法。默认情况下,Conda更喜欢在中心位置为您管理环境列表,而virtualenv在当前目录中创建文件夹。如果您正在进行机器学习,并且您在许多项目中使用了两个广泛的环境,并且希望从任何地方进入这些环境,则前者(集中式)是有意义的。如果您正在做一些一次性的小项目,这些项目具有完全不同的lib需求集,而这些需求集实际上更属于项目本身,那么后者(每个项目文件夹)是有意义的。

    Conda创建的空环境大约为122MB,而VirtualEnvironment大约为12MB,因此,这也是您不希望将Conda环境分散到任何地方的另一个原因。

    最后,Conda更喜欢其集中环境的另一个肤浅迹象是(同样,默认情况下),如果您在自己的项目文件夹中创建一个Conda环境并激活它,出现在shell中的名称前缀是到文件夹。你可以通过给它一个名字来解决这个问题,但是默认情况下,虚拟环境是正确的。

    我预计这个信息会很快变得陈旧,因为两个包管理器争夺主导地位,但这些是今天的权衡:)

    编辑:我在04/2021再次审查了情况,它没有变化。使用conda安装本地目录仍然很尴尬。