Python - math 模块



Python math 模块

math 模块是 Python 中一个内置模块,用于执行数学运算。此模块提供各种内置方法来执行不同的数学任务。

注意:math 模块的方法不适用于复数。为此,您可以使用cmath 模块。

导入 math 模块

在使用math 模块的方法之前,您需要将math 模块导入到您的代码中。以下是语法:

import math

Python math 模块的方法

以下是我们根据其功能和用法分类的 math 模块方法列表。

math 模块 - 理论和表示方法

Python 在math 模块中包含以下理论和表示函数:

序号 函数及描述
1

math.ceil(x)

x 的上取整:不小于 x 的最小整数

2 math.comb(n,k)

此函数用于查找从 y 个项目中选择 x 个项目的方法数,不重复且无顺序。

3

math.copysign(x, y)

此函数返回一个浮点数,其大小(绝对值)为 x,但符号为 y。

4

math.cmp(x, y)

此函数用于比较两个对象的数值。此函数在 Python3 中已弃用。

5

math.fabs(x)

此函数用于计算给定整数的绝对值。

6

math.factorial(n)

此函数用于查找给定整数的阶乘。

7

math.floor(x)

此函数计算给定整数的向下取整值。

8

math.fmod(x, y)

math 模块中的 fmod() 函数返回与"%" 运算符相同的结果。但是,fmod() 比模运算符给出更精确的模除结果。

9

math.frexp(x)

此函数用于计算给定数字的尾数和指数。

10

math.fsum(iterable)

此函数返回迭代器(即列表、元组、数组)中所有数值项的浮点和。

11

math.gcd(*integers)

此函数用于计算所有给定整数的最大公约数。

12

math.isclose()

此函数用于确定两个给定的数值是否彼此接近。

13

math.isfinite(x)

此函数用于确定给定数字是否为有限数。

14

math.isinf(x)

此函数用于确定给定值是否为无穷大(正或负)。

15

math.isnan(x)

此函数用于判断给定数字是否为“NaN”(非数字)。

16

math.isqrt(n)

此函数计算给定非负整数的整数平方根。

17

math.lcm(*integers)

此函数用于计算给定整数参数的最小公倍数。

18

math.ldexp(x, i)

此函数返回第一个数字与第二个数字指数的乘积。因此,ldexp(x,y) 返回 x*2**y。这是 frexp() 函数的逆函数。

19

math.modf(x)

此函数返回 x 的小数部分和整数部分,组成一个包含两个元素的元组。

20

math.nextafter(x, y, steps)

此函数返回 x 之后朝向 y 的下一个浮点数。

21

math.perm(n, k)

此函数用于计算排列。它返回从 y 个项目中选择 x 个项目(无重复且有序)的方法数。

22

math.prod(iterable, *, start)

此函数用于计算给定可迭代对象(列表、元组)中所有数值项的乘积。

23

math.remainder(x,y)

此函数返回 x 对 y 的余数。它是 x − n*y 的差值,其中 n 是最接近商 x / y 的整数。

24

math.trunc(x)

此函数返回数字的整数部分,去除小数部分。对于正数 x,trunc() 等效于 floor();对于负数 x,等效于 ceil()。

25

math.ulp(x)

此函数返回浮点数 x 的最低有效位的数值。对于正数 x,trunc() 等效于 floor();对于负数 x,等效于 ceil()。

Math 模块 - 幂和对数方法

序号 函数及描述
1

math.cbrt(x)

此函数用于计算一个数的立方根。

2

math.exp(x)

此函数计算 x 的指数:ex

3

math.exp2(x)

此函数返回 2 的 x 次幂。它等效于 2**x。

4

math.expm1(x)

此函数返回 e 的 x 次幂减 1。其中 e 是自然对数的底。

5

math.log(x)

此函数计算 x 的自然对数,其中 x > 0。

6

math.log1p(x)

此函数返回 1+x 的自然对数(以 e 为底)。计算结果在 x 接近零时是准确的。

7

math.log2(x)

此函数返回 x 的以 2 为底的对数。这通常比 log(x, 2) 更精确。

8

math.log10(x)

x 的以 10 为底的对数,其中 x > 0。

9

math.pow(x, y)

x**y 的值。

10

math.sqrt(x)

x 的平方根,其中 x > 0

Math 模块 - 三角函数方法

Python 的 math 模块包含以下执行三角计算的函数:

序号 函数及描述
1

math.acos(x)

此函数返回 x 的反余弦值(以弧度表示)。

2

math.asin(x)

此函数返回 x 的反正弦值(以弧度表示)。

3

math.atan(x)

此函数返回 x 的反正切值(以弧度表示)。

4

math.atan2(y, x)

此函数返回 atan(y / x)(以弧度表示)。

5

math.cos(x)

此函数返回 x 弧度的余弦值。

6

math.sin(x)

此函数返回 x 弧度的正弦值。

7

math.tan(x)

此函数返回 x 弧度的正切值。

8

math.hypot(x, y)

此函数返回欧几里得范数,sqrt(x*x + y*y)。

Math 模块 - 角度转换方法

以下是 Python math 模块提供的角度转换函数:

序号 函数及描述
1

math.degrees(x)

此函数将给定的角度从弧度转换为度数。

2

math.radians(x)

此函数将给定的角度从度数转换为弧度。

Math 模块 - 数学常数

Python 的 math 模块定义了以下数学常数:

序号 常数和描述
1

math.pi

表示数学常数 pi,其值为 "3.141592..."(精确到可用精度)。

2

math.e

表示数学常数 e,其值为 "2.718281..."(精确到可用精度)。

3

math.tau

表示数学常数 Tau(用 τ 表示)。它等于周长与半径的比率,等于

4

math.inf

表示正无穷大。负无穷大使用 "−math.inf"

5

math.nan

此常数是一个浮点“非数字”(NaN)值。其值等效于 float('nan') 的输出。

Math 模块 - 双曲函数方法

双曲函数是基于双曲线而不是圆的三角函数的类似物。以下是 Python math 模块的双曲函数:

序号 函数及描述
1

math.acosh(x)

此函数用于计算给定值的反双曲余弦。

2

math.asinh(x)

此函数用于计算给定数字的反双曲正弦。

3

math.atanh(x)

此函数用于计算一个数字的反双曲正切。

4

math.cosh(x)

此函数用于计算给定值的双曲余弦。

5

math.sinh(x)

此函数用于计算给定数字的双曲正弦。

6

math.tanh(x)

此函数用于计算一个数字的双曲正切。

Math 模块 - 特殊方法

以下是 Python math 模块提供的特殊函数:

序号 函数及描述

1

math.erf(x)

此函数返回给定参数的高斯误差函数的值。

2

math.erfc(x)

此函数是误差函数的互补函数。erf(x) 的值等效于 1-erf(x)

3

math.gamma(x)

此函数用于计算复数的阶乘。它被定义为除非正整数以外的所有复数。

4

math.lgamma(x)

此函数用于计算 x 处 Gamma 函数绝对值的自然对数。

示例用法

以下示例演示了 math 模块及其方法的使用

# Importing math Module
import math

# Using methods of math module
print(math.sqrt(9))
print(math.pow(3, 3))
print(math.exp(1))
print(math.log(100, 10))

print(math.factorial(4))
print(math.gcd(12, 3))

输出

3.0
27.0
2.718281828459045
2.0
24
3
广告