Sympy Typeerror: cannot determine truth value of Relational (How to make sure x > 0)
Sympy Typeerror: cannot determine truth value of Relational (How to make sure x > 0)
我想针对 x1 的每个正值检查 6**x1 是否大于 0。我正在使用 sympy。
我做了以下事情:
x1 = sm.symbols('x_1',nonnegative=True)
u = 6**x1
def checker(func):
if u > 0:
return True
else:
return False
但是,我收到错误消息:
类型错误:无法确定关系的真值
我认为这是因为函数不知道 x1 是正的。但我如何确保它知道这一点?显然,sm.symbols 定义还不够。
斑马板
SymPy 仅让您将可以计算的事物与具有文字 >
(和类似)的数字进行比较。如果您想对符号表达式进行查询,请使用 expr.is_positive
或(如果您也希望考虑 oo
,则使用 expr.is_extended_positive
)。
>>> u.is_positive
True
这也可以是 None 或 False。 None 在无法做出明确决定时返回,例如symbols('x').is_positive is None -> True
.
我想针对 x1 的每个正值检查 6**x1 是否大于 0。我正在使用 sympy。
我做了以下事情:
x1 = sm.symbols('x_1',nonnegative=True)
u = 6**x1
def checker(func):
if u > 0:
return True
else:
return False
但是,我收到错误消息:
类型错误:无法确定关系的真值
我认为这是因为函数不知道 x1 是正的。但我如何确保它知道这一点?显然,sm.symbols 定义还不够。
斑马板
SymPy 仅让您将可以计算的事物与具有文字 >
(和类似)的数字进行比较。如果您想对符号表达式进行查询,请使用 expr.is_positive
或(如果您也希望考虑 oo
,则使用 expr.is_extended_positive
)。
>>> u.is_positive
True
这也可以是 None 或 False。 None 在无法做出明确决定时返回,例如symbols('x').is_positive is None -> True
.