Python min后面的语法(必须访问,key=lambda x:…)
我正在研究TSP问题的贪婪实现 下一行正在查找路径中具有最新点的最近点Python min后面的语法(必须访问,key=lambda x:…),python,function,lambda,anonymous-function,Python,Function,Lambda,Anonymous Function,我正在研究TSP问题的贪婪实现 下一行正在查找路径中具有最新点的最近点 nearest = min(must_visit, key=lambda x: distance(path[-1], x)) lambda x:distance(路径[-1],x)的含义是什么?如何将其作为单独的函数写入?path[-1]返回最后一个点 距离(路径[-1],x)返回最后一个点和点x之间的距离 min函数迭代必须访问并计算最后一个点和必须访问中的点之间的距离,并返回最小值。您的lambda函数将返回距离(路径
nearest = min(must_visit, key=lambda x: distance(path[-1], x))
lambda x:distance(路径[-1],x)的含义是什么?如何将其作为单独的函数写入?path[-1]返回最后一个点
距离(路径[-1],x)返回最后一个点和点x之间的距离
min函数迭代必须访问并计算最后一个点和必须访问中的点之间的距离,并返回最小值。您的lambda函数将返回距离(路径[-1],x)
返回的值,因此nerest
将是必须访问中的最小元素,其中距离(路径[-1],x)
至少为
等效功能:
def my_func(x):
return distance(path[-1], x)
你可以像这样使用它:
nerest = min(must_visit, key=my_func)
def key(x):返回距离(路径[-1],x)
为什么要删除关于食谱的问题?@JuanCarlosOropeza我想我有自己的答案(正确)