针对循环python进行了优化

时间:2015-09-30 00:42:38

标签: python python-2.7 for-loop

好的,所以,在解决问题时,我正在浏览其他人的代码,他们实现了一种我在Python中不熟悉的for语句。对不起,我是Python新手,谷歌搜索对我没有帮助。

distance, food = min([(util.manhattanDistance(state, food), food) for food in foodList])

我有点明白,这会占用食物或距离的最小值,但我不确定。

2 个答案:

答案 0 :(得分:0)

在这种情况下,Function用于计算新列表的元素,方法是指定一个表达式来评估 现有列表中的每个元素。

至于如何使用:结果列表传递给for,以计算该列表元素的最小值,这将是一对值:距离和食物。最小对将分配给min

答案 1 :(得分:0)

列表推导的一行转换为for循环和赋值

    for food in foodList:
       food_list.append(util.manhattanDistance(state, food), food) <--> value of

    min_value = min(food_list)