对于我最近的项目,我必须使用 sympy
检查两个术语是否相等或相同。
示例:
x+2=5 和 x+5=8
- 这两项相等(等价),但不相同x+2=5 和 x+2=5
- 它们是相等且相同的
问题:
是否可以区分“相等”和“相同”?如果是这样 - 我该如何实现这一目标?
最佳答案
如果您使用==
,您将得到结构相同的对象的答案。检查数学相等性涉及某种简化以使两个表达式在结构上相同。对于您给出的方程,人们可以执行以下任一操作:
>>> 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
关于python - SymPy - 如何检查两项是否相等但不相同,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28226684/