Сравнение диктатов списков, имеющих другие диктанты - PullRequest
0 голосов
/ 30 апреля 2020

Извините за путаницу, которую может создать название.

У меня есть несколько диктов, составленных из списков диктов, см. Пример ниже:

{spain: [{'gold':3}, {'silver':2}, {'bronze':0}], china:[{'gold':3}, {'silver':2}, {'bronze':0}]}

Я получил страна с наибольшим количеством медалей, используя:

dict([max(d.items(), key=lambda x: x[1][0]['gold'])])

Но теперь мне нужно узнать, как найти 2 страны с одинаковым количеством золотых медалей.

Мне нужно знать, вернет ли он True или False

1 Ответ

1 голос
/ 30 апреля 2020

Что вы можете сделать, это составить список всех золотых медалей следующим образом:

gmedals = [k[0]['gold'] for k in d.values()]

И проверьте, совпадает ли длина наборов с набором наборов.
Поскольку набор удаляет дубликаты, если длина одинакова, это означает, что нет двух стран с одинаковым количеством золотых медалей. В противном случае мы возвращаем True.

len(gmedals) != len(set(gmedals)) # True for your example
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...