Сортировка списка кортежей с несколькими условиями
В настоящее время я пытаюсь отсортировать следующий список:
list_ = [(1, '0101'), (1, '1010'), (1, '101'), (2, '01'), (2, '010'), (2, '10')]
Вот шаги, которые я хочу предпринять, чтобы отсортировать:
Сортировать список по значению первого элемента кортежейДалее сортируйте список подлина второго элемента кортежей (не значение, длина!) ПОСЛЕ окончания шага 1.Затем сортируйте список по значению второго элемента кортежей ПОСЛЕ шага 1 и шаг 2 завершается.Моя попытка:
sorted_by_length = sorted(list_, key=len x:x[1])
Тем не менее, я получил синтаксическую ошибку, касающуюсяx
послеkey= len
, Какую переменную я должен использовать в этом случае?
Правильный отсортированный список должен быть:
sorted_by_length = [(1, '101'), (1, '0101'), (1, '1010'), (2, '01'), (2, '10'), (2, '010')]
Спасибо за помощь.