首页 > 解决方案 > Sympy solve() 未知方程

问题描述

我有一个 GUI,用户可以在其中输入一个表达式,这应该由 Sympy 为变量 'w' 解决,并且该解决方案用于其他一些东西。

例如,我确实使用以下公式测试了我的脚本:

expr =  expr(2 * w**(2))

expr3 =  expr(1.4)

我确实使用的相关代码:

List_of_Numbers = list()
w = Symbol('w')
equation1 = Eq(expr,expr3)
equation2 = Eq(expr3,expr)
sol = solve((equation1,equation2),(w))
Solution_used_later =  sol[1][0] #solve(eq1,w)
print("Solution_used_later",Solution_used_later)
List_of_Numbers.append(str(Solution_used_later))
median_Solution = float(List_of_Numbers)/3
print("median Solution",median_Solution )

因为我确实有一个偶数指数,所以我会得到一个解决方案,例如:

w = +xyz or -xyz 

由于我不知道指数是偶数还是奇数,我不知道 sympy 给定元组的长度,所以我不能像现在这样解决问题。因为 w 的合法值的数量事先是未知的。

也许有人可以给我一个提示,如何解决给定 Sympy 的解决方案元组的未知长度的问题。如果有两个合法的解决方案,我总是想选择正值。如果只有一种解决方案,我想选择唯一的选择。

提前致谢

汉斯

标签: pythontuplestry-catchsympy

解决方案


推荐阅读