从Python函数获取输出变量
我正在使用一个函数,从Python函数获取输出变量,python,scipy,Python,Scipy,我正在使用一个函数,scipy.optimize.fmin_bfgs,它有几个输出变量。我关心其中两个,xopt和fopt。如何存储这些变量?以下内容不适用于我: xopt, fopt = fmin_bfgs(f, 0, fprime = fprime) 但是,这给了我fopt: fopt = fmin_bfgs(f, 0, fprime = fprime) 我也需要xopt,但它说我“还需要1个值来解包。”您需要将full\u output设置为true,之后还包括fopt,func\u调
scipy.optimize.fmin_bfgs
,它有几个输出变量。我关心其中两个,xopt和fopt。如何存储这些变量?以下内容不适用于我:
xopt, fopt = fmin_bfgs(f, 0, fprime = fprime)
但是,这给了我fopt
:
fopt = fmin_bfgs(f, 0, fprime = fprime)
我也需要
xopt
,但它说我“还需要1个值来解包。”您需要将full\u output
设置为true,之后还包括fopt
,func\u调用
,grad\u调用
,以及warnfag
;您可以对返回的序列进行切片:
xopt, fopt = fmin_bfgs(f, 0, fprime = fprime, full_output=True)[:2]
见:
全输出
:布尔,可选如果为True,则除了xopt之外,还返回fopt、func_调用、grad_调用和warnflag 诚然,这个函数的文档说明了这一点,我首先要看一下。从外观上看,
bopt
和gopt
也包括在设置了full\u output
时,但文档未能正确解释这一点