Python 简明教程

Python - math Module

Python math Module

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

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

Importing math Module

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

import math

Methods of Python math Module

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

Math Module - Theoretic and Representation Methods

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

Sr.No.

Function & Description

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)* 此函数计算给定整数的 floor 值。

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)* 此函数用于确定给定的值是否为无穷大(+ve 或 -ve)。

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,trunc() 等同于 ceil()。

25

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

Math Module - Power and Logarithmic Methods

Sr.No.

Function & Description

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> 0,返回 x 的以 10 为底的对数。

9

* math.pow(x, y)* x**y 的值

10

* math.sqrt(x)* 对于 x > 0,返回 x 的平方根

Math Module - Trigonometric Methods

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

Sr.No.

Function & Description

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 Module - Angular conversion Methods

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

Sr.No.

Function & Description

1

* math.degrees(x)* 此函数将给定的角度从弧度转换为度。

2

* math.radians(x)* 此函数将给定的角度从度转换为弧度。

Math Module - Mathematical Constants

Python math 模块定义了以下数学常量 −

Sr.No.

Constants & Description

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 Module - Hyperbolic Methods

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

Sr.No.

Function & Description

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 Module - Special Methods

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

Sr.No.

Function & Description

1

* math.erf(x)* 此函数返回给定参数的高斯误差函数的值。

2

* math.erfc(x)* 此函数是误差函数的余函数。erf(x) 的值等于 1-erf(x)

3

* math.gamma(x)* 它用于计算复数的阶乘。它用于除了非正整数外的所有复数。

4

* math.lgamma(x)* 此函数用于计算 x 处伽马函数的绝对值的自然对数。

Example Usage

以下示例演示了 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))

Output

3.0
27.0
2.718281828459045
2.0
24
3