当前位置: 首页 > news >正文

python 常见数学公式函数使用详解

Python 数学公式与函数大全

Python 提供了丰富的数学计算支持,包括内置函数、标准库(mathcmathnumpy)和第三方库(sympyscipy)。以下是常用数学公式和函数的分类整理:


1. 基本数学运算

1.1 算术运算

运算符/函数描述示例
+, -, *, /加减乘除3 + 2 → 5
//整除7 // 2 → 3
%取模(余数)7 % 2 → 1
**幂运算2 ** 3 → 8
abs(x)绝对值abs(-5) → 5
pow(x, y)幂运算(等价于 x ** ypow(2, 3) → 8
round(x, n)四舍五入(n 位小数)round(3.14159, 2) → 3.14

1.2 分数与小数

from fractions import Fraction
from decimal import Decimal# 分数运算
a = Fraction(1, 3)  # 1/3
b = Fraction(1, 2)  # 1/2
print(a + b)  # 输出: 5/6# 高精度小数
c = Decimal('0.1') + Decimal('0.2')
print(c)  # 输出: 0.3(避免浮点误差)

2. 数学函数库(mathcmath

2.1 基本函数

函数描述示例
math.sqrt(x)平方根math.sqrt(4) → 2.0
math.exp(x)自然指数(exe**xmath.exp(1) → 2.718...
math.log(x, base)对数(默认自然对数)math.log(8, 2) → 3.0
math.log10(x)以 10 为底的对数math.log10(100) → 2.0

2.2 三角函数

函数描述示例
math.sin(x)正弦(弧度制)math.sin(math.pi/2) → 1.0
math.cos(x)余弦math.cos(0) → 1.0
math.tan(x)正切math.tan(math.pi/4) → 1.0
math.degrees(x)弧度转角度math.degrees(math.pi) → 180.0
math.radians(x)角度转弧度math.radians(180) → 3.14159...

2.3 复数运算(cmath

import cmathz = 1 + 2j
print(cmath.sqrt(z))  # 输出: (1.272...+0.786...j)
print(cmath.phase(z))  # 辐角(弧度)

3. 高级数学库(numpyscipy

3.1 线性代数(numpy

import numpy as np# 矩阵运算
A = np.array([[1, 2], [3, 4]])
B = np.array([[5, 6], [7, 8]])
print(A @ B)  # 矩阵乘法# 特征值与特征向量
eigenvalues, eigenvectors = np.linalg.eig(A)

3.2 科学计算(scipy

from scipy.integrate import quad
from scipy.optimize import minimize# 数值积分
result, error = quad(lambda x: x**2, 0, 1)  # ∫x² dx (0→1)
print(result)  # 输出: 0.333...# 优化问题
res = minimize(lambda x: (x[0]-1)**2 + (x[1]-2)**2, x0=[0, 0])
print(res.x)  # 最优解: [1.0, 2.0]

4. 符号计算(sympy

用于解析数学公式(如求导、积分、解方程):

from sympy import symbols, diff, integrate, solvex, y = symbols('x y')
expr = x**2 + 2*x + 1# 求导
print(diff(expr, x))  # 输出: 2*x + 2# 积分
print(integrate(expr, x))  # 输出: x**3/3 + x**2 + x# 解方程
solution = solve(x**2 - 4, x)
print(solution)  # 输出: [-2, 2]

5. 统计与概率

5.1 随机数(random

import randomprint(random.random())  # [0, 1) 随机浮点数
print(random.randint(1, 10))  # 1~10 随机整数

5.2 统计计算(statistics

from statistics import mean, median, stdevdata = [1, 2, 3, 4, 5]
print(mean(data))  # 平均值: 3.0
print(stdev(data))  # 标准差: 1.581...

6. 特殊函数

函数描述示例
math.gamma(x)Gamma 函数math.gamma(5) → 24.0
math.erf(x)误差函数math.erf(1) → 0.842...
scipy.special.besselj(n, x)贝塞尔函数需安装 scipy

总结

需求推荐库示例
基本运算内置函数abs(-5)
三角函数/对数mathmath.sin(math.pi)
复数运算cmathcmath.sqrt(-1)
矩阵运算numpynp.linalg.inv(A)
符号计算sympysolve(x**2 - 1, x)
科学计算scipyscipy.integrate.quad

掌握这些工具后,你可以轻松实现从基础算术到复杂科学计算的各类数学任务! 🚀

http://www.lryc.cn/news/573867.html

相关文章:

  • oracle rac - starwind san 磁盘共享篇
  • 【闲谈】对于c++未来的看法
  • Java面试复习:面向对象编程、JVM原理与Java 8新特性
  • Flink源码阅读环境准备全攻略:搭建高效探索的基石
  • Go语言--语法基础6--基本数据类型--数组类型(1)
  • 114. 二叉树展开为链表
  • C++插值记录
  • 开发云数据库
  • Python环境搭建竞赛
  • python的高校教师资源管理系统
  • 【Guava】0.做自己的编程语言
  • 删除node并且重装然后重装vue
  • 深度学习:PyTorch人工神经网络优化方法分享(2)
  • 【redis使用场景——缓存——双写一致性】
  • 文心一言(ERNIE Bot):百度打造的知识增强大语言模型
  • 一键打包利器:gopack - 极简Go程序编译与压缩工具
  • Ollama按照与使用
  • openapi-generator-maven-plugin自动生成HTTP远程调用客户端
  • Java面试复习指南:基础、面向对象、Java 8新特性及并发编程
  • ASP.NET Core API文档与测试实战指南
  • 编程江湖-Git
  • 分库分表下的 ID 冲突问题与雪花算法讲解
  • 【数据结构】_二叉树部分特征统计
  • python基础(3)
  • 【论文阅读 | CVPR 2024 |Fusion-Mamba :用于跨模态目标检测】
  • 利用通义大模型构建个性化推荐系统——从数据预处理到实时API部署
  • 算法-动态规划-钢条切割问题
  • 简单工厂模式,工厂模式和注册工厂模式
  • Go 循环依赖的依赖注入解决方案详解
  • Cache Travel-09-从零开始手写redis(17)v1.0.0 全新版本架构优化+拓展性增强