Intersect 2列表,将结果存储在python中的元组中

时间:2012-03-02 14:02:40

标签: python list tuples

我认为我所拥有的是一个常见问题,但我无法在Google或SO中找到任何帮助。

我有2个包含类Marker对象的列表。 Marker由变量namepositiontype组成。我希望与两个列表相交,创建相同类型的标记元组并将它们存储在新列表中。从字面上讲,我想做类似以下的事情:

g_markerList = [ (marker1,marker2) for marker1 in marker1List and marker2 in marker2List if marker1.type == marker2.type ]

显然,此代码不起作用。编译器不会在marker2之后“知道”变量and,这会结束for子句。

请帮助我将这两个列表相交并获得类似标记的元组列表!

1 个答案:

答案 0 :(得分:8)

and更改为for

g_markerList = [ (marker1,marker2) for marker1 in marker1List
                                   for marker2 in marker2List
                                   if marker1.type == marker2.type ]