“ - int”和“tuple”的“不支持的操作数类型”是什么意思?

时间:2014-04-08 18:54:30

标签: python scipy tuples

我收到一条错误说:

unsupported operand type(s) for -: 'int' and 'tuple'

如何更正?

from scipy import integrate
cpbar = lambda T: (3.826 - (3.979e-3)*T + 24.558e-6*T**2 - 22.733e-9*T**3 + 6.963e-12*T**4)*8.314
deltahbarCH4 = integrate.quad(cpbar,298,1000)
var = deltahbarCH4

hRPbar = hRPbar + (deltahbarCO2 + 2*deltahbarH2O - var -2*deltahbarO2)

2 个答案:

答案 0 :(得分:4)

integrate.quad() returns a tuple; deltahbarCO2 + 2*deltahbarH2O是一个整数,您试图减去var元组。

如果您希望 y结果的整数integrate.quad(),请使用该元组的第一个元素:

var = deltahbarCH4[0]

或使用元组赋值:

var, err = deltabarCH4

答案 1 :(得分:2)

该错误意味着您尝试在数字和元组之间使用减法运算符-

基于documentation,您可能需要:var = deltahbarCH4[0],因为这将为您提供积分的实际值,您将在稍后的行中进行计算。

相关问题