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 ** y pow(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**x math.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 cmath

z = 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, solve

x, 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 random

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

5.2 统计计算(statistics

复制代码
from statistics import mean, median, stdev

data = [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)
三角函数/对数 math math.sin(math.pi)
复数运算 cmath cmath.sqrt(-1)
矩阵运算 numpy np.linalg.inv(A)
符号计算 sympy solve(x**2 - 1, x)
科学计算 scipy scipy.integrate.quad

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

相关推荐
TDengine (老段)9 分钟前
TDengine Python 连接器入门指南
大数据·数据库·python·物联网·时序数据库·tdengine·涛思数据
田里的水稻34 分钟前
C++_python_相互之间的包含调用方法
c++·chrome·python
2501_9418705639 分钟前
面向微服务熔断与流量削峰策略的互联网系统稳定性设计与多语言工程实践分享
开发语言·python
GIS之路1 小时前
GDAL 实现矢量裁剪
前端·python·信息可视化
IT=>小脑虎1 小时前
Python零基础衔接进阶知识点【详解版】
开发语言·人工智能·python
智航GIS1 小时前
10.6 Scrapy:Python 网页爬取框架
python·scrapy·信息可视化
清水白石0082 小时前
解构异步编程的两种哲学:从 asyncio 到 Trio,理解 Nursery 的魔力
运维·服务器·数据库·python
山海青风2 小时前
图像识别零基础实战入门 1 计算机如何“看”一张图片
图像处理·python
彼岸花开了吗3 小时前
构建AI智能体:八十、SVD知识整理与降维:从数据混沌到语义秩序的智能转换
人工智能·python·llm
山土成旧客3 小时前
【Python学习打卡-Day40】从“能跑就行”到“工程标准”:PyTorch训练与测试的规范化写法
pytorch·python·学习