SymPy - Símbolos

Symbolé a classe mais importante na biblioteca SymPy. Conforme mencionado anteriormente, os cálculos simbólicos são feitos com símbolos. Variáveis ​​SymPy são objetos da classe Symbols.

O argumento da função Symbol () é uma string contendo um símbolo que pode ser atribuído a uma variável.

>>> from sympy import Symbol 
>>> x=Symbol('x') 
>>> y=Symbol('y') 
>>> expr=x**2+y**2 
>>> expr

O trecho de código acima fornece uma saída equivalente à expressão abaixo -

$x^2 + y^2$

Um símbolo pode ter mais de um alfabeto.

>>> s=Symbol('side') 
>>> s**3

O trecho de código acima fornece uma saída equivalente à expressão abaixo -

$side^3$

SymPy também tem um Symbols()função que pode definir vários símbolos de uma vez. String contém nomes de variáveis ​​separados por vírgula ou espaço.

>>> from sympy import symbols 
>>> x,y,z=symbols("x,y,z")

No módulo abc do SymPy, todos os alfabetos latino e grego são definidos como símbolos. Portanto, em vez de instanciar o objeto Symbol, esse método é conveniente.

>>> from sympy.abc import x,y,z

No entanto, os nomes C, O, S, I, N, E e Qsão símbolos predefinidos. Além disso, os símbolos com mais de um alfabeto não são definidos no módulo abc, para o qual você deve usar o objeto Symbol como acima. O módulo abc define nomes especiais que podem detectar definições no namespace SymPy padrão. clash1 contém letras únicas e clash2 contém símbolos conflitantes de várias letras

>>> from sympy.abc import _clash1, _clash2 
>>> _clash1

A saída do snippet acima é a seguinte -

{'C': C, 'O': O, 'Q': Q, 'N': N, 'I': I, 'E': E, 'S': S}

>>> _clash2

A saída do snippet acima é a seguinte -

{'beta': beta, 'zeta': zeta, 'gamma': gamma, 'pi': pi}

Os símbolos indexados podem ser definidos usando uma sintaxe semelhante à função range (). Os intervalos são indicados por dois pontos. O tipo de intervalo é determinado pelo caractere à direita dos dois pontos. Se itr for um dígito, todos os dígitos contíguos à esquerda serão considerados o valor inicial não negativo. Todos os dígitos contíguos à direita são considerados como 1 maior que o valor final.

>>> from sympy import symbols 
>>> symbols('a:5')

A saída do snippet acima é a seguinte -

(a0, a1, a2, a3, a4)

>>> symbols('mark(1:4)')

A saída do snippet acima é a seguinte -

(mark1, mark2, mark3)