usar tutorial integrales instalar como python python-3.x sympy

python - tutorial - ¿Cómo puedo obtener una lista de los símbolos en una expresión sympy?



integrales sympy (2)

Puedes usar:

f.free_symbols

que devolverá un conjunto de todos los símbolos libres.

Ejemplo:

>>> import sympy >>> x, y, z = sympy.symbols(''x:z'') >>> f = sympy.exp(x + y) - sympy.sqrt(z) >>> f.free_symbols set([x, z, y])

Por ejemplo, si corro

import sympy x, y, z = sympy.symbols(''x:z'') f = sympy.exp(x + y) - sympy.sqrt(z)

¿Hay algún método de f que pueda usar para obtener una lista o tupla de objetos sympy.Symbol que contiene la expresión? Prefiero no tener que analizar srepr(f) o analizar hacia abajo a través de f.args .

En este caso, g.args[0].args[1].args[0] me da el Symbol("z") , mientras que g.args[1].args[0].args me da la tupla (Symbol("x"), Symbol("y")) , pero obviamente estos son específicos de la expresión.


Tenga en cuenta que la respuesta de Junior Compressors solo enumera las variables libres .

Si tiene una Sum , un Product , una Integral o algo similar, es posible que desee o no saber adicionalmente la variable de integración / suma mediante el atributo .variables :

In [216]: (x, n) = sympy.symbols("x n") In [217]: f = sympy.Sum(x, (n, 0, 10)) In [218]: f.free_symbols Out[218]: {x} In [219]: f.variables Out[219]: [n]