Сортировка list по двум параметрам

Помогите пожалуйста отсортировать список по 2 параметрам. Имеется список:

let_list = [('y', 1), ('l', 1), ('m', 4), ('u', 1), ('r', 1), ('a', 4)]

тапки в списке нужно отсортировать по второму значению по убыванию, а если второе значение совпадает у нескольких элементов, тогда их нужно отсортировать по первому значению по алфавиту. После сортировки должно получиться:

let_list = [('a', 4), ('m', 4), ('l', 1), ('r', 1), ('u', 1), ('y', 1)]

по всей видимости это нужно делать с помощью метода .sorted(), но как правильно - недопонимаю.


Ответы (1 шт):

Автор решения: Stanislav Volodarskiy

Сортировка по ключу - сперва по перевёрнутому второму элементу кортежа, затем по первому элементу:

sorted(let_list, key=lambda t: (-t[1], t[0]))
→ Ссылка