Получить доступ к отдельным элементам из списка pow и символов sympy python

Я пытаюсь получить доступ к отдельным элементам в длинном списке символов, и один из типов pow, сгенерированных с помощью Sympy, вот как это получается в консоли:

x00
x01
x10
x11
x00
x10
x20
x00
x01
x02
x03
x00
x01
x10
x02
x11
x12
x00
x01
x10
x11
x20
x21
x00
x10
x20
x30

Pow генерируется с помощью

   A = (ymat[0])**(nvec[0]-mvec[0])             #alpha term: mu^(n-k)
            for nv in range (1, nvariables):
                A = A* (ymat[nv]**(nvec[nv]-mvec[nv]))

И символы, использующие:

        mstr = str(mvec[0])                          #beta term: x^k
        for mm in range(1, len(mvec)):
            mstr = mstr + str(mvec[mm])
        B = Symbol('x'+mstr) 

Я пытался использовать индексацию в Python, например, A[1], но я получаю сообщение об ошибке:

TypeError: 'Symbol' object does not support indexing

или же

TypeError: 'Pow' object does not support indexing

Кто-нибудь знает, как я мог получить доступ к отдельным элементам, таким как (1x00)

1 ответ

Символы сравниваются по имени (а также по предположениям, но это не похоже на то, что вы их используете), поэтому вы можете просто воссоздать один и тот же символ, создав его с тем же именем. Так что если вы хотите x00просто создай Symbol('x00') снова, и это даст вам то же самое.

Другие вопросы по тегам