У меня есть этот код здесь:
def most_popular_book(book_loans):
vBL = book_loans.values()
kBL = book_loans.keys()
items = book_loans.items()
print items
kBL = sorted(kBL, key=str.lower)
mvBL = max(vBL)
for key,vaule in items:
if vaule == mvBL:
return key
Моя цель с этим кодом состоит в том, чтобы получить ключ с наибольшим значением, и если 2 ключа имеют одинаковые значения, выберите тот, который стоит первым впорядок лексикографии.
теперь первая часть кода работает отлично!Однако у меня возникли проблемы со второй частью.Я прочитал некоторый код на эту тему, но мне не удалось найти способ заставить его работать.
пример того, как должен работать код:
print most_popular_book({'harry potter':['yossi','adam'],
'lilo and stich':['yossi', "adam"], 'catch-22':['adam'] })
'harry potter'
(он должен напечатать Гарри Поттера), но мой код печатает 'lilo and stich'
другой пример:
{'the little prince': ['yossi'], 'harry potter': ['yossi', 'assaf'],
'catch-22': ['yossi', 'dana']}
'catch-22'
(этовыход работает правильно)