用途:SymPy 是 Python 符号数学库,用数学符号做精确计算而非数值近似。本技能指导符号代数、微积分、线性代数、方程求解、物理计算与代码生成。
主要能力:符号与表达式创建(symbols、Symbol,可加 real、positive、integer 等假设);化简与变形(simplify、expand、factor、cancel);微积分(diff 求导、integrate 积分含定积分与反常积分、limit 极限、series 级数);方程求解(solveset、solve、linsolve、nonlinsolve、dsolve 解微分方程);矩阵与线性代数(Matrix、逆、行列式、转置、特征值/特征向量、对角化、A.solve(b));物理与力学(经典力学 LagrangesMethod、向量分析、量子力学);进阶主题(几何、数论、组合、逻辑与集合、统计、特殊函数、多项式与 Groebner 基);代码生成与输出(lambdify 转 NumPy 函数、codegen 生成 C/Fortran、latex 输出)。
使用方式:需 Python 3.9+,测试版本 SymPy 1.14.0。安装:uv pip install "sympy>=1.14";可选 uv pip install numpy scipy matplotlib。用 import sympy; print(sympy.version) 查看版本。先定义符号再使用;用 Rational 或 S(1)/2 保持精确算术,避免 0.5 这类浮点;需要数值时用 evalf 或 lambdify 转 NumPy 提升性能;按问题选择求解器。
适用场景:需要精确结果(如 sqrt(2) 而非 1.414…)、符号推导、公式验证、物理建模、生成可执行代码或 LaTeX 文档。
限制:资料未提供收费、价格、平台与效果信息;部分方程可能无闭式解,需改用 nsolve 等数值方法;循环中反复 subs 与 evalf 性能较差。