为什么要通过二进制包安装 NumPy?

len*_*ehx 1 python numpy pip

根据NumPy 文档

在大多数用例中,在系统上安装 NumPy 的最佳方法是使用适用于操作系统的可安装二进制包。

但为什么不能像使用一样轻松安装呢pip

据我了解,NumPy需要根据目标机器编译纯Python以外的东西。这是如何运作的?二进制包中是否包含 C 源文件和 C 编译器?或者它是否包含所有预编译的二进制文件,并且仅根据操作系统选择合适的二进制文件进行安装?

ali*_*i_m 6

pip 包只包含 numpy 源代码发行版,其中包括用 C 编写的扩展,因此为了构建它,您需要有一个可用的 C 编译器(这当然不会与 numpy 源代码一起预先打包)。您还需要一个 LAPACK 库,如果您从源代码构建它,则可能还需要 FORTRAN 77 编译器。

安装 numpy 的容易程度pip很大程度上取决于您所工作的环境。一般来说,如果您使用 Linux 或 OSX,那么设置必要的工具链非常容易。由于编译器支持状况较差,Windows 用户通常会遇到最多的问题,因此通常建议从二进制发行版进行安装。Anaconda发行版和Christoph Gohlke 的预构建二进制文件可能两个最受欢迎的选择。

如果您是 Windows 用户并且感觉特别喜欢冒险/受虐狂,这里还提供了从源代码编译 numpy 和 scipy 的说明。