大家好,我有一个像这样的元组列表:
L = [(el,3,1),(el2,2,3),(el3,3,2),(el4,2,4),(el5,1,3)]
我想这样订购:
L_ordered = [(el5,1,3),(el2,2,3),(el4,2,4),(el,3,1),(el3,3,2)]
我首先根据第二个数字进行排序,然后根据第三个数字进行排序,但保持相对于第二个数字的顺序。 有人知道如何在 python 中做到这一点吗?
答案 0 :(得分:0)
使用key
或sort()
函数的sorted()
参数;让它返回一个应该被考虑的字段的元组,按照它们应该被考虑的顺序:
L = [(el,3,1), (el2,2,3), (el3,3,2), (el4,2,4), (el5,1,3)]
L_ordered = sorted(L, key=lambda item: (item[1], item[2]))