当我使用sympify解析带有大于运算符的表达式时,我得到了一个以StrictGreaterThan作为根的表达式。但是,替换==
运算符,sympify
将表达式计算为布尔值False。如何防止sympy用==
计算表达式,从而得到一个与>
运算符相同的一般表达式?你知道吗
from sympy import *
In [2]: s1 = 'a - 4 > b + 5'
In [3]: expr1 = sympify(s1)
In [4]: type(expr1)
Out[4]: sympy.core.relational.StrictGreaterThan
In [5]: s2 = 'a - 4 == b + 5'
In [6]: expr2 = sympify(s2)
In [7]: type(expr2)
Out[7]: bool
如http://docs.sympy.org/dev/gotchas.html所述
您可以使用
sympy.Eq
,如不管怎样,这看起来真的不一致。你知道吗
我在使用sympy时解决这个问题的一种方法是将RHS转换为LHS,然后对字符串进行sympify()。
i、 e.将
LHS == RHS
改为LHS - RHS
相关问题 更多 >
编程相关推荐