Сортировка словаря, по значению (int)?

имеется словарь , у которого все значения - числа , и нужно как-то отсортировать их по размеру значения, и получить 3 ключа , с самыми большими значениями.
  • Вопрос задан
  • 380 просмотров
Пригласить эксперта
Ответы на вопрос 3
aRegius
@aRegius
Python Enthusiast
from collections import Counter

top_three = Counter(your_dict).most_common(3)
Ответ написан
Комментировать
shultais
@shultais
Обучаю программированию на Python и SQL
from random import randint

# Формируем оригинальный словарь
orignal = {i: randint(0, 10000) for i in range(25)}

# Получаем новый
new_dict = {k[0]: k[1] for k in sorted(orignal.items(), key=lambda i: i[1], reverse=True)[:3]}

print(new_dict)
Ответ написан
Комментировать
@Zoltran32
import random
data = {}
for i in range(25):
    data.setdefault(i, random.randint(0, 100))
max = -1
maxkey0 = -1
maxkey1 = -2
maxkey2 = -3
for x in data.keys():
    if data[x] > max:
        max = data[x]
        maxkey2 = maxkey1
        maxkey1 = maxkey0
        maxkey0 = x
print(data)
print(maxkey0, maxkey1, maxkey2)
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы