TypeError:不支持的操作数类型 - :' list'和'符号'

时间:2015-12-15 12:33:55

标签: typeerror

我得到了这个TypeError

"TypeError: unsupported operand type(s) for -: 'list' and 'Symbol'".

显然,它发生在第二部分,其中我减去列表的条目和求解器的符号(T_sto [t,l-1] -x)。但是我不会减去整个列表而只减去一个条目,所以我不知道为什么它无法运行。有人可以帮忙吗?我确定这是一个容易解决的问题,但我现在仍在努力解决它。

这是我的代码:

for t in range(1, n_H):
for l in range(layers):

        if (t==1): # use T_init(i) instead of T(t-1, i)
            if(l>0):
                T_prev=T_init[l-1]
        else:
                T_prev=T_sto[t-1,l]

        if (l==1): # Top layer 
                T_sto[t,l] = solve((m_sto[l-1]*c_w/dt * (x - T_prev) - m_hp[t] * c_w * sheet.cell_value(t,8)
                                + m_hou[t] * c_w * x + m_hou[t] * c_w * T_sto[t,l+1] 
                                + m_hp[t] * c_w * x
                                + k_sto * A_sto[l-1] * (x - T_sur) 
                                - lbd * A_CS / dz[l-1] * (T_sto[t,l+1] - x)), x)


        elif (l==2): # Medium layer has the heat generator
                T_sto[t,l] = solve(m_sto[l-1]*c_w/dt * (x - T_prev) - m_hou[t] * c_w * (T_sto[t,l+1] - x)                                    
                                - m_hp[t] * c_w * (T_sto[t,l-1] - x)
                                + k_sto * A_sto[l-1] * (x - T_sur)
                                - lbd * A_CS / dz[l-1] * (T_sto[t,l+1] - 2*x + T_sto[t,l-1]), x)

0 个答案:

没有答案