信息发布→ 登录 注册 退出

Python math 模块完全指南

发布时间:2026-01-11

点击量:
目录
  • 一、模块概述
  • 二、核心功能详解
    • 1. 数值处理函数
    • 2. 幂与对数
    • 3. 三角函数
  • 三、特殊常数与函数
    • 1. 数学常数
    • 2. 高级函数
  • 四、实战应用案例
    • 1. 几何计算
    • 2. 概率计算
    • 3. 工程计算
  • 五、注意事项
    • 六、性能优化建议

      一、模块概述

      math 模块是 Python 标准库中的数学运算模块,提供:

      • 基础数学运算函数
      • 三角函数与双曲函数
      • 数论相关函数
      • 特殊数学常数
      • 对数与指数计算
      import math  # 标准导入方式
      

      二、核心功能详解

      1. 数值处理函数

      ​函数​描述​示例
      ceil(x)向上取整ceil(3.2) → 4
      floor(x)向下取整floor(3.8) → 3
      fabs(x)绝对值(浮点型)fabs(-5) → 5.0
      factorial(x)阶乘计算factorial(5) → 120
      gcd(a, b)最大公约数gcd(12, 18) → 6
      fsum(iter)精确浮点求和fsum([0.1]*10) → 1.0
      print(math.ceil(math.pi))    # 4
      print(math.floor(math.e))    # 2
      print(math.gcd(48, 18))      # 6
      

      2. 幂与对数

      ​函数​描述​数学公式
      sqrt(x)平方根√x
      pow(x, y)x的y次幂
      exp(x)e的x次幂
      log(x[, b])对数(默认自然对数)log_b(x)
      print(math.sqrt(256))        # 16.0
      print(math.log(100, 10))     # 2.0
      print(math.exp(2))           # 7.38905609893065
      

      3. 三角函数

      ​函数​描述​输入单位
      sin(x)正弦函数弧度
      cos(x)余弦函数弧度
      tan(x)正切函数弧度
      degrees(x)弧度转角度-
      radians(x)角度转弧度-
      angle = math.radians(45)
      print(math.sin(angle))       # 0.7071067811865476
      print(math.degrees(math.pi)) # 180.0
      

      三、特殊常数与函数

      1. 数学常数

      ​常数​值​精度
      math.piπ ≈ 3.14159265358979315位小数
      math.e自然对数底 ≈ 2.71828182845904515位小数
      math.tauτ = 2π ≈ 6.28318530717958615位小数
      math.inf正无穷大IEEE 754
      math.nan非数值IEEE 754

      2. 高级函数

      ​函数 ​描述
      gamma(x)Gamma函数
      erf(x)误差函数
      comb(n, k)组合数 C(n,k)
      isclose(a,b)浮点数近似相等判断
      print(math.comb(10,3))       # 120 (Python 3.10+)
      print(math.gamma(5))         # 24.0 (等效 4! )
      print(math.isclose(0.1+0.2, 0.3))  # True
      

      四、实战应用案例

      1. 几何计算

      def circle_area(radius):
          return math.pi * radius**2
      
      def sphere_volume(radius):
          return (4/3) * math.pi * radius**3
      

      2. 概率计算

      def normal_pdf(x, mu=0, sigma=1):
          """正态分布概率密度函数"""
          coeff = 1 / (sigma * math.sqrt(2*math.pi))
          exponent = -0.5 * ((x - mu)/sigma)**2
          return coeff * math.exp(exponent)
      

      3. 工程计算

      def compound_interest(principal, rate, years):
          """复利计算"""
          return principal * math.exp(rate * years)
      

      五、注意事项

      • ​输入类型:所有函数仅接受整数或浮点数,不接受复数(使用cmath处理复数)
      • ​精度限制:浮点数计算存在精度误差(如math.sqrt(2)**2 ≠ 2
      • ​异常处理
      try:
          print(math.sqrt(-1))
      except ValueError as e:
          print("错误:", e)  # 负数平方根
      
      • 版本差异
        • math.prod() 需要 Python 3.8+
        • math.comb() 需要 Python 3.10+

      六、性能优化建议

      • 批量计算优先使用 NumPy 数组
      • 重复调用时缓存常数值
      PI = math.pi  # 避免重复查找模块属性
      
      • 使用 math.fsum 替代内置 sum进行高精度浮点求和

       到此这篇关于Python math 模块完全指南的文章就介绍到这了,更多相关Python math 模块内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!

      在线客服
      服务热线

      服务热线

      4008888355

      微信咨询
      二维码
      返回顶部
      ×二维码

      截屏,微信识别二维码

      打开微信

      微信号已复制,请打开微信添加咨询详情!