1
大きな配列を必要とする関数には問題があります。同じ問題を複製する単純化されたコードは次のとおりです。Sympy:大規模な配列入力を伴うLambdify関数
次のエラーを与えるfrom sympy import *
def fun(x):
f = []
for i,x_i in enumerate(x):
f.append(x_i**i)
return Matrix(f)
N = 256
x = Matrix([symbols("x_%s"%i) for i in range(N)])
fun_lam = lambdify((x,),fun(x))
:
Traceback (most recent call last):
File "bin/problem-lambdify.py", line 13, in <module>
fun_lam = lambdify((x,),fun(x))
File ".../env/lib/python3.4/site-packages/sympy-1.1rc1-py3.4.egg/sympy/utilities/lambdify.py", line 434, in lambdify
func = eval(lstr, namespace)
File "<string>", line 1
SyntaxError: more than 255 arguments
私はいくつかの点でsympyは引数を平坦化し、したがって、この問題が発生したとします。
私はそれの周りに良い方法を考えることができません。