什么是"amp"SymPy结果中的确切平均值?它总是意味着";和";?
例如:
solve(Eq(216, abs(y**3)))
输出:(6<y(|(y<-6(|((-6<y(>(y<6((
所以我可以这样向用户显示:
print(str(solve(Eq(216, abs(y**3)))).replace("&", "and").replace("|", "or"))
输出:(6<y(或(y<-6(
它是Python"以及";操作人员"|"是";或";操作人员Python还具有";以及";以及";或";关键字。如果您键入";所以它的意思是";表达式,您将得到一个错误,因为";以及";以及";或";正在使用bool(thing(==True或False期待事物。
SymPy知道您可能不希望(x<1) and (x>2)
的求值结果为True,因此它会为您带来错误(而对于像x and y
这样的东西,SymPy使用正常的Python语义并返回y
(要获得未求值的表达式,您可以编写(x<1) & (x>2)
或And(x<1, x>2)
。当您简化该表达式时,它将简化为false:And(x<1, x>2).simplify() -> false
。表达式And(x,y)
不会简化为任何内容。