python中sympy模块快速上手

  • Post author:
  • Post category:python


首先我们需要安装sympy这个模块

通常我们直接输入:

import sympy as sp

如果没有安装的话sympy下方会有一行红线,这个时候把鼠标移动到红线上,就会提示你没有安装,会给出安装选项点击即可。(我是用的python版本是3.10.5)

符号运算又称计算机代数,也就是用计算机去推导数学公式,对表达式进行一系列的操作。

在sympy库中,定义符号变量的命令如下:

import sympy as sp
x,y,z=sp.symbols('x y z')#符号之间也可以使用空格
f,g=sp.symbols('f,g',cls=Function)

也可以使用函数var定义符号变量或者函数符号

import sympy as sp
sp.var('x,y,z')#分隔符号也可以使用空格
sp.var('f,g',cls=sp.Function)

在sympy中,提供了solve函数求解符号函数求解符号代数方程,调用格式如下:

S=solve(f,*x)#f为方程组,*x为符号变量

例如:
\left\{\begin{matrix} 3X+2Y=5& & \\ X+Y=2 & & \end{matrix}\right.
求解这个方程:

import sympy as sp
sp.var('X,Y')
f=[3*X+2*Y-5,X+Y-2]
answer = sp.solve(f,[X,Y])
print(answer)

##{X: 1, Y: 1}

仔细观察f中的等式均为
X+Y-C
,这个函数的标准等式默认为等于0.

以下还有其他的方法:

a.eigenvals() 求解矩阵特征值

a.eigenvects()求解矩阵特征向量

y.diff(x1)对于y求x1的偏导

sp.simplify(y)化简等式y

y.subs({x1:x10,x2:x20})#函数符号代入数值



版权声明:本文为dashbaani原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。