Python列表返回语句解密

时间:2011-11-05 17:11:27

标签: python list syntax for-loop

我在python例程中有以下语句:

return [hulls[h][i] for h, i in hull]

而且我无法弄清楚它实际返回的是什么。

我的意思是,船体是一个船体清单,所以'船体[n]'是'船体'类型。另外,船体的类型为'Point'船体是一个点列表,但是

for h, i in hull? 

文档没有提到为什么以及如何执行这样的调用,它闻起来像某种列表理解调用,但我仍然无法正确阅读该语法。

所以我想帮助理解如何翻译伪代码或c#

中的句子

非常感谢。

3 个答案:

答案 0 :(得分:3)

是的,这是列表理解。您的退货声明可以不那么紧凑地重写为:

result = []
for h, i in hull:
    result.append(hulls[h][i])
return result

答案 1 :(得分:1)

赫尔斯看起来像是一个二维数组。 Hull是一对int(x,y)的列表。对于Hull中的每个坐标,它返回该位置的外壳中的项目。

答案 2 :(得分:0)

是的,大卫是对的。如果你仍然对这条线感到困惑         对于h,我在船体上: 我认为这意味着船体是一个包含多个元素的元组列表。所以你使用船体中的每个元素作为船体的索引。