Python数学模块

2025年4月17日 | 阅读 14 分钟

引言

在本文中,我们讨论 Python 中的 Math 模块。我们可以使用 Math 模块轻松地在 Python 中计算许多数学计算。在处理特定的财务或严谨的科学任务时,偶尔需要进行数学计算。Python 有一个 Math 模块可以处理这些复杂的计算。Math 模块中的函数可以执行简单的数学计算,如加法 (+) 和减法 (-),以及高级数学计算,如三角函数和对数运算。

本教程通过简单的示例全面讲解了如何应用 Math 模块,从基础到更高级的概念。为了更好地理解,我们包含了该模块中所有内置函数。的列表。

Python 中的 Math 模块是什么?

Python 有一个内置的 Math 模块。它是一个标准模块,因此我们无需单独安装。我们只需要在想要使用的程序中导入它。我们可以像导入 Python 的任何其他模块一样,使用 `import math` 来导入该模块,以实现执行数学运算的函数。

由于该模块的源代码是用 C 语言编写的,因此它提供了对底层 C 库功能的访问。这里我们给出了一些 Python Math 模块的基本示例。示例代码如下:

程序代码 1

这里我们给出一个 Python Math 模块计算数字平方根的示例。代码如下:

输出

现在我们在 Python 中编译上述代码,并在成功编译后运行它。然后输出如下:

3.0

此 Python 模块不接受复杂数据类型。更复杂的等价物是 cmath 模块。

例如,我们可以使用 Math 模块中的内置函数计算任何给定角度的所有三角比。这些三角函数(sin、cos、tan 等)需要输入弧度角。然而,我们习惯于用度来衡量角度。Math 模块提供了两种方法,用于在弧度和度之间转换角度。

程序代码 2

这里我们给出一个 Python Math 模块计算数字阶乘的示例。代码如下:

输出

现在我们在 Python 中编译上述代码,并在成功编译后运行它。然后输出如下:

5
120

程序代码 3

现在我们在 Python 中编译上述代码,并在成功编译后运行它。然后输出如下:

输出

现在我们在 Python 中编译上述代码,并在成功编译后运行它。然后输出如下:

12
2
144.0

程序代码 4

这里我们给出一个 Python Math 模块计算两个数字的最大公约数 (GCD) 的示例。代码如下:

输出

现在我们在 Python 中编译上述代码,并在成功编译后运行它。然后输出如下:

12
4
4

Math 模块

程序代码-

我们使用程序代码来了解 Python Math 模块的所有函数。代码如下:

输出

现在我们在 Python 中编译上述代码,并在成功编译后运行它。然后输出如下:

['__doc__',
 '__loader__',
 '__name__',
 '__package__',
 '__spec__',
 'acos',
 'acosh',
 'asin',
 'asinh',
 'atan',
 'atan2',
 'atanh',
 'ceil',
 'comb',
 'copysign',
 'cos',
 'cosh',
 'degrees',
 'dist',
 'e',
 'erf',
 'erfc',
 'exp',
 'expm1',
 'fabs',
 'factorial',
 'floor',
 'fmod',
 'frexp',
 'fsum',
 'gamma',
 'gcd',
 'hypot',
 'inf',
 'isclose',
 'isfinite',
 'isinf',
 'isnan',
 'isqrt',
 'ldexp',
 'lgamma',
 'log',
 'log10',
 'log1p',
 'log2',
 'modf',
 'nan',
 'perm',
 'pi',
 'pow',
 'prod',
 'radians',
 'remainder',
 'sin',
 'sinh',
 'sqrt',
 'tan',
 'tanh',
 'tau',
 'trunc']

现在我们来讨论上面提到的 Python 中的功能。

1. Ceil()

在向上取整的情况下,它将始终返回最接近正数的整数值。这里我们给出 Python 中 ceil() 的程序代码。代码如下:

输出

现在我们在 Python 中编译上述代码,并在成功编译后运行它。然后输出如下:

12.7856
13

2. floor()

在向下取整的情况下,它将始终返回最接近负数的整数值。这里我们给出 Python 中 floor() 的程序代码。代码如下:

输出

现在我们在 Python 中编译上述代码,并在成功编译后运行它。然后输出如下:

12.7856
13

3. fabs()

在 fabs() 的情况下,它将始终返回最接近负数的值。这里我们给出 Python 中 fabs() 的程序代码。代码如下:

输出

现在我们在 Python 中编译上述代码,并在成功编译后运行它。然后输出如下:

12.7856
13

如何打印 pi 的值?

我们编写代码在 Python Math 模块中打印 pi 值。代码如下:

输出

现在我们在 Python 中编译上述代码,并在成功编译后运行它。然后输出如下:

3.141592653589793

Python Math 模块中的除法概念是什么?

我们编写代码演示 Python Math 模块中的除法概念。代码如下:

输出

现在我们在 Python 中编译上述代码,并在成功编译后运行它。然后输出如下:

12
5
Float Division 2.4
Integer Division 2
Reminder 2

Math 模块中的常量

Math 模块提供了 pi 和 tau 等许多常量的数值,这样我们就无需记住它们。使用这些常量可以避免每次都精确地写出每个常数的值。Math 模块包含以下常量:

  1. 欧拉数
  2. Tau
  3. 无穷大
  4. 圆周率
  5. 非数字 (NaN)

让我们逐一了解它们。

欧拉数

`math.e` 常量返回欧拉数的值 2.71828182845。

其语法是

欧拉数的语法如下:

程序代码

现在我们编写代码来打印欧拉数的值。代码如下:

输出

现在我们在 Python 中编译上述代码,并在成功编译后运行它。然后输出如下:

The value of Euler's Number is:  2.718281828459045

Tau

tau 是圆的周长与其半径之比。`tau` 常量返回的值是 6.283185307179586。

其语法是

tau 的语法如下:

程序代码

现在我们编写代码来打印 tau 的值。代码如下:

输出

现在我们在 Python 中编译上述代码,并在成功编译后运行它。然后输出如下:

The value of Tau is:  6.283185307179586

无穷大

Infinity 表示无边界。Infinity 在实际数轴的两个方向上都指无限或永无止境的事物。数字无法充分表示它。`math.inf` 返回一个正无穷大常量。我们可以使用 `-math.inf` 来打印负无穷大。这里我们还可以将一个非常大的浮点数与正无穷大和负无穷大值进行比较。

其语法是

无穷大的语法如下:

程序代码 1

现在我们编写代码来判断一个值是否是无穷大。代码如下:

输出

现在我们在 Python 中编译上述代码,并在成功编译后运行它。然后输出如下:

inf
-inf

程序代码 2

现在我们编写代码来判断一个值是否是无穷大。代码如下:

输出

现在我们在 Python 中编译上述代码,并在成功编译后运行它。然后输出如下:

True
True

圆周率

Pi 是数学中的一个常数值,用于计算圆的半径。Pi 大家都知道。它在数学上表示为分数 22/7 或十进制数 3.14。`math.pi` 提供了 pi 的最准确值。

其语法是

pi 的语法如下:

程序代码 1

现在我们编写代码来打印 pi 的值。代码如下:

现在我们在 Python 中编译上述代码,并在成功编译后运行它。然后输出如下:

输出

The value of pi is  3.141592653589793

让我们计算圆的周长。

程序代码 2

现在我们编写代码在 Python 中使用 pi 函数计算圆周长值。代码如下:

输出

现在我们在 Python 中编译上述代码,并在成功编译后运行它。然后输出如下:

The value of the circle circumference: 25.132741228718345

NaN

`math.nan` 为我们提供了一个浮点数 nan (Not a Number) 值。这个数值不是一个有效的数字值。Float("nan") 和 nan 常量是可比的。

程序代码

现在我们编写代码来获得浮点数 nan (Not a Number) 值。代码如下:

输出

现在我们在 Python 中编译上述代码,并在成功编译后运行它。然后输出如下:

nan

使用 Math 模块进行数学运算

在这一部分,我们将介绍表示论和数论所需的函数,例如计算整数的阶乘。

计算向上取整和向下取整的值

“向上取整值”和“向下取整值”分别指大于该数的最小整数值和小于该数的最大整数值。`ceil()` 和 `floor()` 方法简化了这方面的计算。

程序代码

这里我们使用 Python 中的 `floor()` 和 `ceil()` 函数编写代码。代码如下:

输出

现在我们在 Python 中编译上述代码,并在成功编译后运行它。然后输出如下:

The ceiling value of 4.346 is : 5
The floor value of 4.346 is : 4

计算数字的阶乘

使用 `math.factorial()` 函数,我们可以在一行代码中计算给定整数的阶乘。如果给定的数字不是整数,Python 解释器会发送一个消息。

代码

输出

现在我们在 Python 中编译上述代码,并在成功编译后运行它。然后输出如下:

The factorial of 6 is :  720
Cannot calculate factorial of a non-integral number

计算绝对值

`math.fabs()` 方法返回函数输入的数字的绝对值。

代码

输出

现在我们在 Python 中编译上述代码,并在成功编译后运行它。然后输出如下:

The absolute value of -45 is:  45.0

计算指数

`exp()` 函数用于计算 x 的 e 次方,也称为数字 x 的指数。

代码

输出

现在我们在 Python 中编译上述代码,并在成功编译后运行它。然后输出如下:

The exponenetial value of 4 is:  54.598150033144236
The exponenetial value of -3 is:  0.049787068367863944
The exponenetial value of 0.0 is:  1.0

计算数字的幂

`pow()` 函数计算 x**y。此函数在将输入转换为浮点数后计算幂的值。

代码

输出

现在我们在 Python 中编译上述代码,并在成功编译后运行它。然后输出如下:

The value of 4 to the power of 5 is:  1024.0

不使用 pow 函数,我们也可以在 Python 中计算幂。代码如下:

程序代码

输出

现在我们在 Python 中编译上述代码,并在成功编译后运行它。然后输出如下:

The value of 4 to the power of 5 is:  1024

计算正弦、余弦和正切

`sin()`、`cos()` 和 `tan()` 方法返回作为函数输入提供的角度的正弦、余弦和正切值。此函数期望输入值为弧度。

代码

输出

现在我们在 Python 中编译上述代码,并在成功编译后运行它。然后输出如下:

The sine of pi/4 is :  0.7071067811865475
The cosine of pi/4 is :  0.7071067811865476
The tangent of pi/4 is :  0.9999999999999999

dir() 函数

内置的 `dir()` 方法返回一个排序的字符串列表,其中包含模块定义的标识符。标识符包括模块的名称,以及每个模块中的函数、类和变量。

列表包含模块的名称,每个名称都指定了常量、函数和方法。这是一个简单的说明:

代码

输出

现在我们在 Python 中编译上述代码,并在成功编译后运行它。然后输出如下:

['__doc__', '__loader__', '__name__', '__package__', '__spec__', 'acos', 'acosh', 'asin', 'asinh', 'atan', 'atan2', 'atanh', 'ceil', 'comb', 'copysign', 'cos', 'cosh', 'degrees', 'dist', 'e', 'erf', 'erfc', 'exp', 'expm1', 'fabs', 'factorial', 'floor', 'fmod', 'frexp', 'fsum', 'gamma', 'gcd', 'hypot', 'inf', 'isclose', 'isfinite', 'isinf', 'isnan', 'isqrt', 'lcm', 'ldexp', 'lgamma', 'log', 'log10', 'log1p', 'log2', 'modf', 'nan', 'nextafter', 'perm', 'pi', 'pow', 'prod', 'radians', 'remainder', 'sin', 'sinh', 'sqrt', 'tan', 'tanh', 'tau', 'trunc', 'ulp']

Python Math 模块中所有函数的描述

下面是 Math 模块中指定的所有属性和函数的列表,以及每个函数功能的简要说明。

函数描述
ceil(x)返回大于或等于 x 的最小整数。
copysign(x, y)返回 x,但符号取自 y。
fabs(x)返回 x 的绝对值。
factorial(x)返回 x 的阶乘。
floor(x)返回小于或等于 x 的最大整数。
fmod(x, y)返回 x 除以 y 后的余数。
frexp(x)返回 x 的尾数和指数对。(m, e)
fsum(iterable)返回可迭代对象中所有值的精确浮点数和。
isfinite(x)如果 x 既不是无穷大也不是 NaN,则返回 True (Not a Number)
isinf(x)如果 x 是正无穷大或负无穷大,则返回 True。
isnan(x)如果 x 是 NaN,则返回 True。
ldexp(x, i)返回 x * (2**i)。
modf(x)返回 x 的小数部分和整数部分。
trunc(x)返回 x 的截断整数值。
exp(x)返回 e**x
expm1(x)返回 e**x - 1
log(x[, b])返回以 b 为底的 x 的对数。(默认为 e)
log1p(x)返回 1 + x 的自然对数。
log2(x)返回以 2 为底的 x 的对数。
log10(x)返回以 10 为底的 x 的对数。
pow(x, y)返回 x 的 y 次幂。
sqrt(x)返回 x 的平方根。
acos(x)返回 x 的反余弦值。
asin(x)返回 x 的反正弦值。
atan(x)返回 x 的反正切值。
atan2(y, x)返回 atan(y / x)。
cos(x)返回 x 的余弦值。
hypot(x, y)返回 sqrt(x*x + y*y),即欧几里得范数。
sin(x)返回 x 的正弦值。
tan(x)返回 x 的正切值。
degrees(x)将角度 x 从弧度转换为度。
radians(x)将角度 x 从度转换为弧度。
acosh(x)返回 x 的反双曲余弦值。
asinh(x)返回 x 的反双曲正弦值。
atanh(x)返回 x 的反双曲正切值。
cosh(x)返回 x 的双曲余弦值。
sinh(x)返回 x 的双曲余弦值。
tanh(x)返回 x 的双曲正切值。
erf(x)返回 x 处的误差函数。
erfc(x)一个返回 x 处互补误差的函数
gamma(x)返回 x 处的 Gamma 函数。
lgamma(x)返回 x 处 Gamma 函数绝对值的自然对数。
pi圆的周长与直径之比的数学常数 (3.14159...)
ee 是数学中的一个常数 (2.71828...)

结论

所以,在本文中,我们讨论了 Python 中的 math 模块。在 math 模块中,有各种函数可用于数学计算等等。我们讨论了 math 模块中的每个函数,还分享了一些这些函数的程序代码。


下一主题Python OS 模块