Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 3.x 用数组求辛多项式_Python 3.x_Sympy - Fatal编程技术网

Python 3.x 用数组求辛多项式

Python 3.x 用数组求辛多项式,python-3.x,sympy,Python 3.x,Sympy,我需要Symphy的帮助,我实际上有一个多项式列表,比如说,有两个变量s0和s1,但是有些多项式只在s0中,有些只在s1中,有些只是常数,有些则两个变量都有,例如: poly = [1 , s0 , s0+3*s1 , .... ] 我想用相同的命令来评估它们中的任何一个,比如说,s0=2和s1=1。例如,计算我尝试过的列表的第三个多项式 s = sympy.symbols('s0:%d'2) poly[2].subs(s,[2,0]) # s is containing (s0, s1),

我需要Symphy的帮助,我实际上有一个多项式列表,比如说,有两个变量s0s1,但是有些多项式只在s0中,有些只在s1中,有些只是常数,有些则两个变量都有,例如:

poly = [1 , s0 , s0+3*s1 , .... ]
我想用相同的命令来评估它们中的任何一个,比如说,s0=2s1=1。例如,计算我尝试过的列表的第三个多项式

s = sympy.symbols('s0:%d'2)
poly[2].subs(s,[2,0])

# s is containing (s0, s1), but this won't work at all

poly[2].eval([2,0])

# this one works only if the polynomial uses the two variables, so it will throw an error for poly[0] and poly[1]

事实上,我不知道哪一个有哪一个变量,我也不知道有多少个变量,最后的信息是函数的输入。因此,需要对列表中的所有多项式使用数组和相同的命令。

您可以将dict与SUB一起使用:

In [12]: from sympy import *                                                                                                                                  

In [13]: s0, s1 = symbols('s:2')                                                                                                                              

In [14]: polys = [1 , s0 , s0+3*s1]                                                                                                                           

In [15]: [S(p).subs(values) for p in polys]                                                                                                                   
Out[15]: [1, 2, 5]