SymPy学习之Gotchas

本文介绍了使用Python的SymPy库进行符号计算的基本方法,包括如何定义符号变量、处理表达式等值判断、进行表达式的简化操作等内容。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一个问题
>>> x = symbols('x')
>>> expr = x + 1
>>> x = 2
>>> print(expr)
x + 1
#SymPy有自己的变量,通过symbols函数将Python变量名与自己的变量名相关联,因此x = 2只是将Python变量x与2关联,不影响SymPy的内部变量举个例子:
>>> a,b = symbols('b a')#将python变量a,b与内部变量b,a相关联
>>> a
b
>>> b
a
>>> expr.subs(x, 2)   #subs函数对变量进行赋值并计算
3
关于等号
>>> x + 1 == 4  #对这个表达式进行了比较运算
False
>>> Eq(x + 1, 4)  #Eq函数保留了式子的原型
Eq(x + 1, 4)
>>> (x + 1)**2 == x**2 + 2*x + 1  #二者结构并不相等
False
>>> a = (x + 1)**2
>>> b = x**2 + 2*x + 1
>>> c = x**2 - 2*x + 1
>>> a.equals(b)  #用equals判断相等
True
>>> a-c
   2          2 
- x + 2⋅x + (x + 1) - 1
>>> simplify(a - c)   #用simplify进行化简
4*x
^ and /
#与Python一样^进行异或运算
>>> True ^ False
True
>>> True ^ True
False
>>> x^y
Xor(x, y)

>>> Integer(1)/Integer(3)  #SymPy内置整数Integer
1/3

>>> x + 1/2  #先对1/2进行了数学计算,再与SymPy变量x相加
x + 0.5
>>> x + Rational(1, 2) #都是SymPy变量
x + 1/2



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值