对于我最近的项目,如果两个术语相同或相同,我必须使用sympy
进行检查。
示例:
x+2=5 and x+5=8
- 这两个术语相同(等效),但它们不相同x+2=5 and x+2=5
- 这些是相同且相同的问题:
是否可以区分"等于"和#34;相同"?如果是这样 - 我如何实现这一目标?
答案 0 :(得分:3)
如果您使用==
,您将获得结构相同的对象的答案。检查数学相等性涉及某种简化,以使两个表达式在结构上相同。对于您提供的等式,可以执行以下任一操作:
>>> from sympy import *
>>> var('x')
x
>>> a=Eq(x+2,5)
>>> b=Eq(x+5,8)
>>> a.equals(b)
False
>>> solve(a)==solve(b)
True
>>> a.lhs-a.rhs == b.lhs-b.rhs
True
>>> abs(a.lhs-a.rhs) == abs(b.rhs-b.lhs)
True