Na przykład, jeśli biegnęJak mogę uzyskać listę symboli w wyrażeniu sympy?
import sympy
x, y, z = sympy.symbols('x:z')
f = sympy.exp(x + y) - sympy.sqrt(z)
jest jakaś metoda f
że mogę użyć, aby uzyskać listę lub krotka sympy.Symbol
obiektach że wyrażenie zawiera? Wolałbym nie parsować srepr(f)
lub parsować w dół przez f.args
.
W tym przypadku g.args[0].args[1].args[0]
daje mi Symbol("z")
, natomiast g.args[1].args[0].args
daje mi krotki (Symbol("x"), Symbol("y"))
, ale oczywiście są to wyrażenie specyficzne.
Zauważ, że to tylko powroty ** darmowe ** symbole. Na przykład dla 'Sum (T, (n, 1, N))/N' zwraca' {N, T} ', ale nie' n'. – gerrit