从pow和symbol sympy python列表中访问单个元素

时间:2013-05-14 12:44:50

标签: python sympy

我正在尝试访问一长串符号中的单个元素,以及使用Sympy生成的一种pow类型,以下是控制台中的结果:

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

使用

生成战俘
   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 个答案:

答案 0 :(得分:0)

符号按名称进行比较(也是假设,但看起来并不像你使用的那些),所以你可以通过制作一个具有相同名称的符号来重新创建相同的符号。因此,如果你想要x00,只需再次创建Symbol('x00'),它就会给你同样的东西。