pip&conda&anaconda&miniconda

本篇文章的阅读量是: 22

1.Conda和Anaconda的区别

Conda诞生于2012年,是一个开源的、跨平台的包和环境管理工具。

Conda被打包在了Anacoda和Miniconda中。

Anaconda:软件发行版。软件发行版是一个预先建立和配置好的packages的集合,可以被安装在操作系统上,并被使用。Anaconda是由Anaconda公司开发的,一个包含PyData生态中的核心软件的完全发行版,它包含了Python本身和数百个第三方开源项目的二进制文件,例如conda、numpy、scipy、ipython等。

Miniconda:也是一个软件发行版。Miniconda本质上是一个用来安装空的conda环境的安装器,它仅包含Conda和Conda的依赖,而不包含上一段中列举的包。所以我们可以从零开始,安装我们需要的东西。当然,我们也可以通过conda intall anaconda来将anaconda安装到其中。

Conda:是一个包和环境管理工具。包管理工具是一个用来自动化安装、升级、删除packages的工具。由于Conda拥有“conda install“、”conda update“、”conda remove“等子命令,它完全符合包管理工具的定义。

注意:如果你愿意,我们可以完全独立地、在没有Anaconda和Miniconda的情况下安装Conda。

2.Conda和Pip的区别

Conda是一个与语言无关的跨平台包和环境管理器。虽然conda发源于Python的PyData社区,但是它不仅适用于管理Python包,而且还是一个通用的包管理工具。用conda可以创建、管理任何类型的、用任何语言写的包和依赖。它很像一个跨平台版本的apt或者yum。Conda只能在conda环境中安装包,但是可以安装各种语言、各种类型的包。如果我们希望在一个已有的系统Python环境中安装Python包,conda是帮不了我们的,因为它只能在conda环境中安装包。

Pip是Python包的通用管理器。pip的全称是Pip Install Packages,它是一个Python官方认证的包管理工具。它只能管理python包,通常用于安装发布在Python Package Index(PyPI)上面的包。Pip和PyPI均由Python Packaging Authority(PyPA)管理和支持。Pip可以在任何环境中安装包,但是只能安装Python包。所以说,如果我们需要用到很多依赖于外部dependencies的Python包(例如NumPy、SciPy和Matplotlib),或者如果我们想要跟踪这些包的外部依赖,那么pip是帮不了我们的,因为它只能管理Python包。如果我们要做的仅仅是在相互独立的环境中安装Python包,那么conda的作用和pip+virtualenv的作用几乎是一样的。其中“相互独立的环境”指的是conda环境或者是virtualenv,在这样的环境中,我们可以在不修改系统Python安装的前提下安装各种包。

condapip
管理二进制wheel or src
需要编译器noyes
语言anypython
虚拟环境支持通过virtualenv或venv支持
依赖性检查yes屏幕提示用户选择
包来源anaconda repo or cloudPyPI

pip:Python包管理工具;下载安装的是 wheels 或 source 的 Python 软件包;

conda:开源的软件包管理系统和环境管理系统;能够创建隔离的环境,该环境可以包含不同版本的Python和或其中安装的软件包;下载安装的软件包是二进制文件(安装的是可能用任何语言编写的软件包,可能包含 C 或 C++ 库,R 软件包或任何其他软件)

即,conda ≈ pip(python包管理) + virtualenv(虚拟环境) + 非python依赖包管理

pip install [包名] == [版本号]
conda install [包名] = [版本号]

pip的使用:https://www.runoob.com/w3cnote/python-pip-install-usage.html

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注