按列表内部,列表内部的坐标排序

时间:2018-08-27 14:52:22

标签: python python-3.x list sorting coordinates

我有一个要在其中按x坐标排序的程序。

我的列表如下:

[('Name1', (449, 923, 634, 737)), ('Name2', (390, 1356, 613, 1133)), ('Name3', (1062, 1749, 1216, 1594))] 

原始列表的每个元素都有一个名称,然后有一组x1,y1,x2,y2坐标。如果要按x2坐标对列表进行排序,该怎么做?

我到处搜索,发现您可以使用“ itemgetter”来执行以下操作:

preds = sorted(preds, key=itemgetter(1))

但这就是整个坐标的集合。我将如何具体说说第三坐标?

1 个答案:

答案 0 :(得分:-1)

您可以使用key=lambda t:t[1][2]

对其进行排序
>>> preds = [('Name1', (449, 923, 634, 737)), ('Name2', (390, 1356, 613, 1133)), ('Name3', (1062, 1749, 1216, 1594))] 
>>> preds.sort(key=lambda t: t[1][2])
>>> preds
[('Name2', (390, 1356, 613, 1133)), ('Name1', (449, 923, 634, 737)), ('Name3', (1062, 1749, 1216, 1594))]
>>> 
相关问题