我试图找出一种有效的方法来解决Sympy"自动"中的方程组。让我举例说明,这是制定代码的标准方法
n = 3
y = sp.symbols('y1:{}'.format(n + 1))
TempDict1=(sp.solve([Dem_s[0],Dem_s[1]],(y[0],y[1])))
我想让它可迭代,因此方程组系统会根据Dem_s和y列表中存在多少个方程和变量来更新自己。
我尝试了以下内容:
Templist=[]
for i in range(n-1):
Templist.append(y[i])
TempDict1={}
for i in range(n-1):
TempDict1=sp.solve([Dem_s[i]], (Templist))
然而,这不会解决它。你有什么建议吗?
提前致谢。
答案 0 :(得分:0)
第一个片段更好地表达为
n = 3
y = sp.symbols('y1:{}'.format(n + 1))
TempDict1 = sp.solve(Dem_s, y)
如果您有变量元组y
,则无需使用(y[0], y[1])
解包并重新打包它。传递y
应该完全符合您的要求。
您没有说明Dem_s
是如何形成的,但只要它是SymPy表达式的列表或元组,上面的内容就可以了。