N. Поиск ошибок

Иногда в данных встречаются ошибки — например, повторы там, где их быть не должно.
Научимся быстро находить такие случаи при помощи словарей и выражений.

Вашему решению предоставлен словарь data, в котором ключами являются слова, а значениями списки чисел.

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

Примечание

В решении не должно быть ничего, кроме выражения.

Подсказка:
В случае наличия повторов, длины списка и множества построенного на нем будут различны.

Пример

Ввод

data = {'a': [1, 2, 1], 'b': [2, 3, 2, 5, 1]}

Вывод

{'a', 'b'}

Ввод

data = {'a': [1, 2, 3], 'b': [5, 2, 5], 'c': [7, 15, 3]}

Вывод

{'b'}

Решение

Как всегда, все просто – перебираем данные, проверяем, что если длина списка не совпадает с длиной множества, то мы имеем дубликаты и значит нам надо добавить наше слово-ключ в словарь. Это простой и очень эффективный прием в python. За счет особенности реализации языка, он быстрее, чем более оптимальное с точки зрения алгоритмов, но написанное на python решение.

Посмотреть код

Решение

Python
{word for word, numbers in data.items() if len(numbers) != len(set(numbers))}
Подписаться
Уведомить о
guest
0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии