TypeError:/:'list'和'int'的不支持的操作数类型

时间:2016-02-19 10:03:04

标签: python function error-handling typeerror

我收到以下错误:

  

/:'list'和'int'

的不支持的操作数类型

我该如何解决这个问题?任何的想法?

这是我的代码:

def func(xdata_1,cc,dd,gg):
    return cc*(xdata_1**(dd))*
           (10**(-1.572*gg*( (185/((xdata_1/420)**2 + (420/xdata_1)**2 + 90 )) )

params,pcov = curve_fit(func,xdata_1,ydata_1,
                        sigma=err_1, absolute_sigma=True)

fc_1 = func(xdata_1, *params)

1 个答案:

答案 0 :(得分:1)

检查所有变量的数据类型,例如xdata_1ccddgg

<强> 1。如何检查变量的类型:

使用'type`内置函数来获取变量类型。

<强>演示

>>> d
[1, 2, 3]
>>> type(d)
<type 'list'>
>>> 

<强> 2。关于例外:

当我们对/list变量进行int操作时会出现此异常。

<强>演示

>>> d = [1,2,3]
>>> d/4
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: unsupported operand type(s) for /: 'list' and 'int'
>>> 

第3。提供输入

最好在问题中提供输入详细信息,即xdata_1params的值,以便我们为您提供代码错误的位置。