我收到以下错误:
/:'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)
答案 0 :(得分:1)
检查所有变量的数据类型,例如xdata_1
,cc
,dd
,gg
<强> 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_1
和params
的值,以便我们为您提供代码错误的位置。