
🎬 HoRain云小助手:个人主页
🔥 个人专栏: 《Linux 系列教程》《c语言教程》
⛺️生活的理想,就是为了理想的生活!
⛳️ 推荐
前些天发现了一个超棒的服务器购买网站,性价比超高,大内存超划算!忍不住分享一下给大家。点击跳转到网站。
专栏介绍
|
专栏名称 |
专栏介绍 |
|
《C语言》 |
本专栏主要撰写C干货内容和编程技巧,让大家从底层了解C,把更多的知识由抽象到简单通俗易懂。 |
|
《网络协议》 |
本专栏主要是注重从底层来给大家一步步剖析网络协议的奥秘,一起解密网络协议在运行中协议的基本运行机制! |
|
《docker容器精解篇》 |
全面深入解析 docker 容器,从基础到进阶,涵盖原理、操作、实践案例,助您精通 docker。 |
|
《linux系列》 |
本专栏主要撰写Linux干货内容,从基础到进阶,知识由抽象到简单通俗易懂,帮你从新手小白到扫地僧。 |
|
《python 系列》 |
本专栏着重撰写Python相关的干货内容与编程技巧,助力大家从底层去认识Python,将更多复杂的知识由抽象转化为简单易懂的内容。 |
|
《试题库》 |
本专栏主要是发布一些考试和练习题库(涵盖软考、HCIE、HRCE、CCNA等) |
目录
⛳️ 推荐
专栏介绍
📦 一、安装所需库
🔷 二、使用 SymPy 进行符号积分
1. 不定积分(求原函数)
2. 定积分(求积分值)
🔶 三、使用 SciPy 进行数值积分
📊 四、SymPy vs SciPy 对比
💡 五、实用技巧
1. 美化输出(LaTeX格式)
2. 多重积分
3. 检查积分是否存在
⚠️ 注意事项
🎯 快速参考表

根据搜索结果,我为您整理了Python快速求解不定积分和定积分的完整指南。主要使用 SymPy(符号积分)和 SciPy(数值积分)两个库。
📦 一、安装所需库
pip install sympy scipy
🔷 二、使用 SymPy 进行符号积分
1. 不定积分(求原函数)
from sympy import symbols, integrate, sin, cos, exp, sqrt, pi
# 定义符号变量
x = symbols('x')
# 示例1:多项式积分 ∫(x² + 3x + 5)dx
f1 = x**2 + 3*x + 5
F1 = integrate(f1, x)
print(f"∫(x² + 3x + 5)dx = {F1}")
# 示例2:三角函数积分 ∫sin(x)dx
f2 = sin(x)
F2 = integrate(f2, x)
print(f"∫sin(x)dx = {F2}")
# 示例3:复杂函数积分 ∫√(1/x)dx
f3 = sqrt(1/x)
F3 = integrate(f3, x)
print(f"∫√(1/x)dx = {F3}")
# 示例4:指数函数积分 ∫e^x dx
f4 = exp(x)
F4 = integrate(f4, x)
print(f"∫e^x dx = {F4}")
输出示例:
∫(x² + 3x + 5)dx = x**3/3 + 3*x**2/2 + 5*x
∫sin(x)dx = -cos(x)
∫√(1/x)dx = 2*sqrt(x)
∫e^x dx = exp(x)
2. 定积分(求积分值)
from sympy import symbols, integrate, sin, pi, oo # oo表示无穷大
x = symbols('x')
# 示例1:定积分 ∫₀^π sin(x)dx
result1 = integrate(sin(x), (x, 0, pi))
print(f"∫₀^π sin(x)dx = {result1}")
# 示例2:定积分 ∫₀^1 x² dx
result2 = integrate(x**2, (x, 0, 1))
print(f"∫₀^1 x² dx = {result2}")
# 示例3:无穷积分 ∫₋∞^∞ sin(x)/x dx
result3 = integrate(sin(x)/x, (x, -oo, oo))
print(f"∫₋∞^∞ sin(x)/x dx = {result3}")
# 示例4:带参数的定积分
a, b = symbols('a b')
result4 = integrate(x**2, (x, a, b))
print(f"∫ₐ^b x² dx = {result4}")
输出示例:
∫₀^π sin(x)dx = 2
∫₀^1 x² dx = 1/3
∫₋∞^∞ sin(x)/x dx = pi
∫ₐ^b x² dx = -a**3/3 + b**3/3
🔶 三、使用 SciPy 进行数值积分
当无法求得解析解时,使用数值积分:
from scipy import integrate
import numpy as np
# 示例1:数值定积分 ∫₀^1 x² dx
result1, error1 = integrate.quad(lambda x: x**2, 0, 1)
print(f"∫₀^1 x² dx ≈ {result1}, 误差估计: {error1}")
# 示例2:数值定积分 ∫₀^π sin(x)dx
result2, error2 = integrate.quad(lambda x: np.sin(x), 0, np.pi)
print(f"∫₀^π sin(x)dx ≈ {result2}, 误差估计: {error2}")
# 示例3:复杂函数数值积分
result3, error3 = integrate.quad(lambda x: np.exp(-x**2), -np.inf, np.inf)
print(f"∫₋∞^∞ e^(-x²)dx ≈ {result3}, 误差估计: {error3}")
输出示例:
∫₀^1 x² dx ≈ 0.3333333333333333, 误差估计: 3.7e-15
∫₀^π sin(x)dx ≈ 2.0, 误差估计: 2.2e-14
∫₋∞^∞ e^(-x²)dx ≈ 1.7724538509055159, 误差估计: 1.5e-09
📊 四、SymPy vs SciPy 对比
| 类型 | 符号计算 | 数值计算 |
| 结果 | 精确解析表达式 | 近似数值 |
| 适用场景 | 理论推导、公式化简 | 工程计算、复杂函数 |
| 速度 | 较慢 | 较快 |
| 无穷积分 | 支持 | 支持 |
💡 五、实用技巧
1. 美化输出(LaTeX格式)
from sympy import init_printing
init_printing(use_latex=True) # 在Jupyter中显示美观的数学公式
2. 多重积分
from sympy import symbols, integrate
x, y = symbols('x y')
# 二重积分 ∫₀^1 ∫₀^2 (x + y) dy dx
result = integrate(x + y, (y, 0, 2), (x, 0, 1))
print(f"二重积分结果: {result}")
3. 检查积分是否存在
from sympy import Integral, symbols
x = symbols('x')
expr = Integral(1/x, x)
result = expr.doit() # 尝试计算
print(f"积分结果: {result}")
⚠️ 注意事项
🎯 快速参考表
| 不定积分 | integrate(f, x) |
| 定积分 | integrate(f, (x, a, b)) |
| 数值积分 | integrate.quad(f, a, b) |
| 定义符号 | x = symbols('x') |
| 无穷大 | oo (SymPy) 或 np.inf (SciPy) |
希望这份指南能帮助您快速上手Python积分计算!如有具体问题,欢迎继续提问。

❤️❤️❤️本人水平有限,如有纰漏,欢迎各位大佬评论批评指正!😄😄😄
💘💘💘如果觉得这篇文对你有帮助的话,也请给个点赞、收藏下吧,非常感谢!👍 👍 👍
🔥🔥🔥Stay Hungry Stay Foolish 道阻且长,行则将至,让我们一起加油吧!🌙🌙🌙




