当前位置:  开发笔记 > 编程语言 > 正文

Conda是否取代了virtualenv的需求?

如何解决《Conda是否取代了virtualenv的需求?》经验,为你挑选了5个好方法。

我最近发现康达我是有安装SciPy的麻烦后,确切的说是我开发一个应用程序的Heroku.

使用Conda,您可以创建与virtualenv非常相似的环境.我的问题是:

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

    我还需要使用pip吗?如果是这样,我还能在隔离环境中安装带有pip的软件包吗?

Mike Müller.. 142

    康达取代了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                   

在Anaconda环境中使用pip是否有任何负面影响?有没有一种情况你想要使用pip,即使包装可以通过Conda获得? (6认同)

有一个很大的警告“ conda知道pip安装的软件包”。据我了解,在conda env中,pip是独立运行的,因此conda无法卸载例如pip安装的软件包 (4认同)


Mad Physicis.. 55

简短的回答是,你只需要conda.

    Conda在单个包中有效地结合了pip和virtualenv的功能,因此如果您使用conda,则不需要virtualenv.

    你会惊讶于conda支持多少个包.如果还不够,你可以在conda下使用pip.

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



1> Mike Müller..:

    康达取代了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                   


在Anaconda环境中使用pip是否有任何负面影响?有没有一种情况你想要使用pip,即使包装可以通过Conda获得?
有一个很大的警告“ conda知道pip安装的软件包”。据我了解,在conda env中,pip是独立运行的,因此conda无法卸载例如pip安装的软件包

2> Mad Physicis..:

简短的回答是,你只需要conda.

    Conda在单个包中有效地结合了pip和virtualenv的功能,因此如果您使用conda,则不需要virtualenv.

    你会惊讶于conda支持多少个包.如果还不够,你可以在conda下使用pip.

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



3> pylang..:

虚拟环境和 pip

我将补充说,使用Anaconda 创建和删除 conda环境很简单.

> conda create --name  python= 

> conda remove --name  --all 

在激活的环境中,通过conda或安装软件包pip:

(envname)> conda install 

(envname)> pip install 

这些环境与conda的pip类软件包管理密切相关,因此创建环境并安装Python和非Python软件包都很简单.


Jupyter

此外,在环境中安装会ipykernel在Jupyter笔记本的内核下拉菜单中添加一个新列表,从而将可重现的环境扩展到笔记本电脑.从Anaconda 4.1开始,添加了nbextensions,更容易为笔记本添加扩展.

可靠性

根据我的经验,畅达是在安装大型资料库,如更快,更可靠numpypandas.此外,如果您希望转移保存的环境状态,可以通过共享或克隆环境来实现.



4> y.selivonchy..:

安装Conda将使您能够根据需要创建和删除python环境,从而为您提供与virtialenv相同的功能.

如果是两个发行版,您将能够创建一个独立的文件系统树,您可以根据需要安装和删除python包(可能是pip).如果您希望针对不同的用例使用相同库的不同版本,或者您只是想尝试一些分发并在保留磁盘空间后将其删除,那么这可能会派上用场.

区别:

许可协议.虽然virtualenv属于最自由的麻省理工学院许可,但康达使用3条BSD许可.

Conda为您提供自己的包装控制系统.这个包控制系统经常提供流行的非python软件的预编译版本(对于大多数流行的系统),这可以很容易地使一些机器学习包工作.也就是说,您不必为您的系统编译优化的C/C++代码.虽然这对我们大多数人来说是一个很大的缓解,但它可能会影响这些图书馆的表现.

与virtualenv不同,Conda至少在Linux系统上复制了一些系统库.这些库可能会不同步,导致程序的行为不一致.

判决:

Conda很棒,应该是您开始机器学习的默认选择.这将节省你一些时间搞乱gcc和众多包.然而,康达不会取代virtualenv.它引入了一些可能并不总是需要的额外复杂性.它有不同的许可证.您可能希望避免在分布式环境或HPC硬件上使用conda.



5> Johan..:

Pipenv是另一个新的选项,也是我目前首选的启动和运行环境的方法。

目前,它是Python.org官方推荐的Python打包工具

推荐阅读
殉情放开那只小兔子
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有