Отображать самые большие элементы в словаре, исходя из значения ключа? - PullRequest
0 голосов
/ 10 декабря 2018

У меня есть словарь, и я хочу отобразить три самых больших элемента, но я хочу, чтобы он основывался на значении int ключа.Вот код:

cust_numb = int(input("Enter number of unique customers then press enter:"))
list_customer = {}
customers = 1
for y in range(0,cust_numb):
    purch_numb = int(input("How many purchases did customer %s have % 
(customers)))
    list_customer.update({"customer{}".format(customers) : purch_numb})
    customers = customers + 1

info = ""
for customer in range(0,cust_numb):
    info += "%s " % ("customer {}".format(customer+1)) + "had %s " % 
(list_customer["customer{}".format(customer+1)]) + "purchases. "

info = dict(dictionary)

Я не смог найти это онлайн, и любая помощь приветствуется!

1 Ответ

0 голосов
/ 10 декабря 2018

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

d     = {'a':2,'b':1,'c':5,'d':0}
sList = sorted(d.values())
op    = []
for i in sList:
  op.append([k for k,v in d.items() if v == i][0])
print (op)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...