在循环内定义函数

2024-07-05 15:03:30 发布

您现在位置:Python中文网/ 问答频道 /正文

def lin_min(alpha):#1
    return 1       #2
xk = init_path
for i in range(0, 50):
    sk = -dobj(xk)
    def lin_min(alpha):
        return obj(xk + alpha*sk)
    opt = sopt.golden(lin_min)
    xk = xk + opt * sk

我试图在循环中定义一个函数。但是,直到我在顶部添加前两行,它才起作用。它们与我的函数无关,但这次代码正常工作。为什么?在


Tags: path函数inalphaforreturninitdef