Я пытаюсь отсортировать словарь дважды: по убыванию значения, а затем по алфавиту.
Например,
tally = {"hello": 5, "dog": 12, "cat": 1, "bird": 5, "lion": 5}
Я хочу вывести список, содержащий каждое из этих слов, отсортированных по убыванию.
output = ["dog", "hello", "bird", "lion", "cat"]
Затем в рамках этой сортировки подгруппируйте их по алфавиту. Как в:
final_result = ["dog", "bird", "hello", "lion", "cat"]
На самом деле мне не нужно получать список output
, мне нужно только чтобы получить final_result
. Так что, если есть способ сделать это с 1 шагом, это было бы лучше. Так как мне это сделать?
Я попытался использовать key = lambda t:t[1]
для начальной сортировки, но это привело к кортежу с ключами и значениями из моего словаря. Теперь это, очевидно, не сработало, потому что мне нужны были только слова, а также я понятия не имел, как выполнить подсортировку в этом.
Заранее спасибо за помощь.