SymPy - Symboles
Symbolest la classe la plus importante de la bibliothèque symPy. Comme mentionné précédemment, les calculs symboliques sont effectués avec des symboles. Les variables SymPy sont des objets de la classe Symbols.
L'argument de la fonction Symbol () est une chaîne contenant un symbole qui peut être affecté à une variable.
>>> from sympy import Symbol
>>> x=Symbol('x')
>>> y=Symbol('y')
>>> expr=x**2+y**2
>>> expr
L'extrait de code ci-dessus donne une sortie équivalente à l'expression ci-dessous -
$x^2 + y^2$
Un symbole peut être composé de plusieurs alphabets.
>>> s=Symbol('side')
>>> s**3
L'extrait de code ci-dessus donne une sortie équivalente à l'expression ci-dessous -
$side^3$
SymPy dispose également d'un Symbols()fonction qui peut définir plusieurs symboles à la fois. La chaîne contient les noms de variables séparés par une virgule ou un espace.
>>> from sympy import symbols
>>> x,y,z=symbols("x,y,z")
Dans le module abc de SymPy, tous les alphabets latins et grecs sont définis comme des symboles. Par conséquent, au lieu d'instancier l'objet Symbol, cette méthode est pratique.
>>> from sympy.abc import x,y,z
Cependant, les noms C, O, S, I, N, E et Qsont des symboles prédéfinis. En outre, les symboles avec plus d'un alphabets ne sont pas définis dans le module abc, pour lequel vous devez utiliser l'objet Symbol comme ci-dessus. Le module abc définit des noms spéciaux qui peuvent détecter des définitions dans l'espace de noms SymPy par défaut. clash1 contient des lettres simples et clash2 a des symboles de conflit de plusieurs lettres
>>> from sympy.abc import _clash1, _clash2
>>> _clash1
La sortie de l'extrait de code ci-dessus est la suivante -
{'C': C, 'O': O, 'Q': Q, 'N': N, 'I': I, 'E': E, 'S': S}
>>> _clash2
La sortie de l'extrait de code ci-dessus est la suivante -
{'beta': beta, 'zeta': zeta, 'gamma': gamma, 'pi': pi}
Les symboles indexés peuvent être définis à l'aide d'une syntaxe similaire à la fonction range (). Les plages sont indiquées par un deux-points. Le type de plage est déterminé par le caractère à droite des deux points. Si itr est un chiffre, tous les chiffres contigus à gauche sont pris comme valeur de départ non négative. Tous les chiffres contigus à droite sont considérés comme 1 supérieur à la valeur de fin.
>>> from sympy import symbols
>>> symbols('a:5')
La sortie de l'extrait de code ci-dessus est la suivante -
(a0, a1, a2, a3, a4)
>>> symbols('mark(1:4)')
La sortie de l'extrait de code ci-dessus est la suivante -
(mark1, mark2, mark3)