Sympy模块似乎无法解决以下表达式,如果将其插入Wolframalpha,则可以解决。 https://www.wolframalpha.com/input/?i=-z+-+sqrt(-rho ** 2 +%2B + 36)+ solve + for + rho
我曾尝试将理据更改为true,并将变量设置为正。
print (z1)
rf = sy.solve(z1, rho)
-z-sqrt(-rho ** 2 + 36)<-这是要解决的功能。 [] <-这是解决方案的空集。
当前结果为空集,预期结果为rho = + sqrt(-z ^ 2 +36)或rho =-sqrt(-z ^ 2 +36)
答案 0 :(得分:0)
要解决此问题,请使用solve(z1, rho, check=False)
,var('z',negative = True)或使用solveset(z1, rho)
。 solve
被sqrt(...) == -z
弄糊涂了,也许以为sqrt
永远不可能是负数(但是如果z < 0
则不是)。