首页 > 解决方案 > 类型错误:residuals_all_exp() 缺少 1 个必需的位置参数:'datasets_dict'

问题描述

我创建了一个函数

def residuals_all_exp(t_grid_online, p, y0_dict, c_dict, datasets_dict):

当我在另一个脚本中调用该函数时

result = minimize(residuals_all_exp, p, args=(y0_dict, c_dict, datasets_dict), method='leastsq', nan_policy= "omit")

错误

类型错误:residuals_all_exp() 缺少 1 个必需的位置参数:'datasets_dict'

发生。为什么?是不是因为我用

t_grid_online, p, y0_dict, c_dict, datasets_dict

但只给了

 p, args=(y0_dict, c_dict, datasets_dict)

?

因此,python实际上不是在读取函数定义中的参数吗?

标签: pythonfunctionparameters

解决方案


在这种情况下,要使函数 f 最小化,您应该使用 minimize(f, x0, args=())。x0 是算法将首先评估您的函数的值。


推荐阅读