import numpy和import math有什么区别

PiC*_*bed 5 python numpy python-3.x

我开始探索python,并尝试使用$ \ pi $进行一些计算。这是我获得$ \ pi $的方法:

import math as m
m.pi
Run Code Online (Sandbox Code Playgroud)

但是有人建议使用numpy代替数学:

import numpy as np
np.pi
Run Code Online (Sandbox Code Playgroud)

我的问题是,两者之间有什么区别?在某些情况下,我们应选择使用一种而不是另一种?

Gui*_*not 6

math是Python的每个版本附带的内置库。它用于对标量数据执行数学运算,例如三角计算。

numpy是一个外部库。这意味着您必须在安装后安装它Python。它用于在数组上执行数学运算,并在矩阵上执行线性代数运算。

其他科学图书馆也定义了piscipy。当您需要仅在numpy或中存在的函数时,通常的方法是不导入数学库scipy

如果只需要访问pi,则应使用该math库。

此外,为了使程序保持轻巧,您应该坚持使用数学库。

  • 一直使用“numpy”即可。 (2认同)
  • @NoName 我多年来一直站在你这边,但一位朋友刚刚说服我,“math”相对于“numpy”的一个优势是可以将你的 pyinstaller exe 减少大约 200 MB。 (2认同)

Xer*_*ith 5

简短的答案:

如果您仅使用标量(而不使用列表或数组)进行简单的运算,请使用数学运算

如果您要对矩阵,数组或大型数据集进行科学计算,请使用numpy

长答案:

数学是标准python库的一部分。它提供了用于基本数学运算的函数以及一些常用常数。

另一方面,numpy是面向科学计算的第三方软件包。它是python中用于数字和矢量运算的defacto软件包。结果,它提供了一些针对矢量和数组计算进行优化的例程,与仅使用python列表相比,这种操作要快得多。有关 更多信息,请参见http://www.numpy.org/