Python math 模块详解
                           
天天向上
发布: 2025-03-18 00:21:50

原创
688 人浏览过

Python 的 math 模块提供了大量的数学函数,涵盖 基本数学运算、对数、三角函数、幂运算、阶乘、特殊数学常数 等。本文将详细介绍 math 模块的常用函数及应用场景,并给出示例代码。


1. 导入 math 模块

在使用 math 模块前,需要先导入:

import math

2. math 模块的数学常量

常量说明
math.pi圆周率 π,约 3.141592653589793
math.e自然对数的底数 e,约 2.718281828459045
math.tau圆常数 τ,等于 2π,约 6.283185307179586
math.inf正无穷大(float('inf')
-math.inf负无穷大
math.nan非数值 NaN(float('nan')

示例

import math

print(math.pi)   # 3.141592653589793
print(math.e)    # 2.718281828459045
print(math.tau)  # 6.283185307179586
print(math.inf)  # inf
print(math.nan)  # nan

3. 基本数学运算

3.1 取整函数

函数说明
math.ceil(x)向上取整,返回不小于 x 的最小整数
math.floor(x)向下取整,返回不大于 x 的最大整数
math.trunc(x)截断小数部分,取整数部分(向 0 取整)

示例

print(math.ceil(4.3))   # 5
print(math.floor(4.9))  # 4
print(math.trunc(-3.9)) # -3

3.2 幂次与根号

函数说明
math.pow(x, y)返回 xy 次幂(浮点数)
math.sqrt(x)返回 x 的平方根
math.exp(x)返回 e^x

示例

print(math.pow(2, 3))   # 8.0
print(math.sqrt(16))    # 4.0
print(math.exp(2))      # 7.38905609893065

3.3 对数运算

函数说明
math.log(x, base)base 为底的对数,默认 base=e
math.log10(x)以 10 为底的对数
math.log2(x)以 2 为底的对数

示例

print(math.log(8, 2))   # 3.0
print(math.log10(100))  # 2.0
print(math.log2(16))    # 4.0

3.4 绝对值与符号判断

函数说明
math.fabs(x)x 的绝对值(浮点数)
math.copysign(x, y)x 的绝对值,并赋予 y 的符号

示例

print(math.fabs(-4.5))       # 4.5
print(math.copysign(3, -7))  # -3.0

3.5 最大公约数与最小公倍数

函数说明
math.gcd(a, b)计算 ab 的最大公约数
math.lcm(a, b)计算 ab 的最小公倍数(Python 3.9+)

示例

print(math.gcd(48, 18))  # 6
print(math.lcm(4, 6))    # 12

3.6 阶乘

函数说明
math.factorial(n)计算 n!(n 的阶乘)

示例

print(math.factorial(5))  # 120 (5*4*3*2*1)

4. 三角函数

4.1 角度与弧度转换

函数说明
math.degrees(x)弧度转换为角度
math.radians(x)角度转换为弧度

示例

print(math.degrees(math.pi))  # 180.0
print(math.radians(180))      # 3.141592653589793

4.2 常用三角函数

函数说明
math.sin(x)正弦函数(弧度)
math.cos(x)余弦函数(弧度)
math.tan(x)正切函数(弧度)

示例

angle = math.radians(30)  # 30° 转弧度
print(math.sin(angle))  # 0.5
print(math.cos(angle))  # 0.86602540378
print(math.tan(angle))  # 0.57735026919

4.3 反三角函数

函数说明
math.asin(x)反正弦函数,返回弧度
math.acos(x)反余弦函数,返回弧度
math.atan(x)反正切函数,返回弧度

示例

print(math.degrees(math.asin(0.5)))  # 30.0
print(math.degrees(math.acos(0.5)))  # 60.0
print(math.degrees(math.atan(1)))    # 45.0

5. 特殊数学函数

函数说明
math.isfinite(x)是否为有限数
math.isinf(x)是否为无穷大
math.isnan(x)是否为 NaN

示例

print(math.isfinite(10))      # True
print(math.isinf(math.inf))   # True
print(math.isnan(math.nan))   # True

6. 总结

math 模块为数学计算提供了丰富的函数,常用功能包括:

  • 基本运算(取整、幂、根号)
  • 对数运算
  • 最大公约数/最小公倍数
  • 三角函数与角度转换
  • 数学常量(π、e、∞)
  • 特殊数值判断

在科学计算、工程计算、数据分析等领域,math 模块是一个不可或缺的工具。更多详细内容请关注其他相关文章!

发表回复 0

Your email address will not be published. Required fields are marked *