python - 为什么有了pip还需要Anaconda?

标签 python pip anaconda

<分区>

Anaconda已经在科学计算中变得非常流行,因为它捆绑了超过 125 个使用最广泛的 Python 数据分析库。我的问题是,既然我们已经有了 pip(这是一个使用非常广泛的 Python 包管理器),为什么我们还需要 Anaconda?难道我们不能为 125 多个库中的每一个都简单地键入 pip install 并且它们都能很好地协同工作吗?还是它们不能很好地协同工作,这意味着 Anaconda 解决了试图让 125 多个库良好交互时出现的问题,帮了我们所有人的忙?

最佳答案

三个根本原因:

  • 这些库中的大多数都需要链接到系统安装的库(例如,用于 PyTables 的 HDF5 或用于 Numpy 的 ATLAS),用户可能知道也可能不知道。请注意,Matplotlib 需要一堆不同的图形库,如果缺少它们,它会在某些后端崩溃。
  • pip 编译库(不过使用轮子可以避免这一步)。这需要一个 C 编译器(在 Windows 中有困难)和一个 FORTRAN 编译器(在 Mac 和 Windows 中有困难)。对于像 Scipy 这样的大型图书馆来说,这也需要时间。
  • Anaconda 的元数据包 anaconda 是 Continuum 确保它们可以很好地协同工作的最小库集。在理想的世界中,我们应该始终使用最新和最改进的所有版本,但这可能会导致不兼容。

还有补语:

  • 使用 conda 可以很容易地创建一组用于分发的包。因此,您可以轻松共享您的包,包括其所有依赖项。

关于python - 为什么有了pip还需要Anaconda?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23689887/

相关文章:

python - 如何只为python3.7安装pip?

python - 直接从 Conda 环境.yml 安装 Spacy 语言模型

python - Anaconda 4.3.1 Navigator 无法在 macOS Sierra 10.12.4 上打开

javascript - drysrape 安装 Ubuntu 服务器 16.04

python - Bootstrap t方法Python实现

python - Scrapy Start_request 解析

python - 无法通过 Jenkins 声明管道在 Docker 镜像中作为代理进行 pip 安装

python - 在 PyCharm 社区版中运行 Python 3 解释器

python - Windows 10 Tensorflow (Anaconda) GPU 不工作

python - Spyder无法从Anaconda环境之一启动