Jak posortować zewnętrzną i wewnętrzną podlistę zagnieżdżonej listy w Pythonie?

Przede wszystkim przepraszam, jeśli jest to zbyt naiwne (jestem początkującym). Mam następujący typ listy list, którą chciałbym najpierw posortować według ostatniego członka wewnętrznej listy w porządku rosnącym:

data =  [[1, .45, 0], [2, .49, 2], [3, .98, 0], [4, .82, 1], [5, .77, 1], [6, .98, 2] ]

Osiągam to za pomocą:sorted(data,key=operator.itemgetter(2),reverse = True), co daje mi:

[[1, .45, 0], [3, .98, 0],[4, .82, 1], [5, .77, 1], [2, .49, 2], [6, .98, 2]]

Teraz chciałbym posortować listę podrzędną, tzn. Najpierw posortować listę z jej ostatnim członkiem jako „0”, używając środkowego elementu jako klucza, w kolejności malejącej. Następnie posortuj listę podrzędną z „1” jako jej ostatni członek i tak dalej. Należy zauważyć, że liczba elementów na każdej podlistie jest inna i nie wiadomo. Ostateczna lista powinna wyglądać następująco:

[[3, .98, 0],[1, .45, 0], [4, .82, 1], [5, .77, 1], [6, .98, 2],[2, .49, 2] ]

Lista jest naprawdę ogromna, dlatego szukam skutecznej implementacji. Wszelkie wskazówki będą mile widziane !

questionAnswers(2)

yourAnswerToTheQuestion