11мес



Программирование
+3Сортировка словаря python
У меня есть словарь следующего вида:
1
dct=['вася':5,'петя':4,'иван':123,'андрей':1,'дима':0,'игорь':7, 'никита':4]
Мне надо преобразовать его в 2 списка, в первом будут все значения по убыванию, во втором имена в порядке убывания их значений.
Вот так:
12
lst1=[123,7,5,4,4,1,0]
lst2=['иван','игорь','вася','петя','никита','андрей','дима']
Как это реализовать на python?
По дате
По рейтингу
1
lst2, lst1 = zip(*sorted(dct.items(), key=lambda x: x[1], reverse = True))
сначала сортируется по значению, получившийся список кортежей, с помощью zip делится на два списка (можно еще map(list, ...) чтобы именно списки были)