Курс Python → Удаление дубликатов из списка с помощью dict.fromkeys

Удаление дубликатов из списка — это распространённая задача, с которой сталкиваются многие программисты, особенно на начальных этапах обучения. Часто возникает необходимость не только удалить повторяющиеся элементы, но и сохранить порядок их появления. В Python существует несколько способов решения этой задачи, но одним из самых эффективных и лаконичных является использование метода dict.fromkeys().

Метод dict.fromkeys() позволяет создать словарь, где ключами становятся уникальные элементы из переданного итерируемого объекта, а порядок их появления сохраняется. Это достигается благодаря тому, что словари в Python (начиная с версии 3.7) являются упорядоченными коллекциями. Таким образом, мы можем легко удалить дубликаты из списка, представив его в виде словаря, а затем преобразовав обратно в список. Это можно сделать всего за одну строку кода!

Рассмотрим пример. Допустим, у нас есть список с повторяющимися элементами:

list1 = [1, 2, 2, 3, 4, 4, 5]

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

unique_list = list(dict.fromkeys(list1))

В результате выполнения этого кода переменная unique_list будет содержать:

[1, 2, 3, 4, 5]

Этот метод не только прост в реализации, но и работает достаточно быстро и эффективно, что делает его идеальным выбором для удаления дубликатов из больших списков. Кроме того, он хорошо читается, что делает код более понятным для других разработчиков.

Таким образом, использование dict.fromkeys() для удаления дубликатов из списка является одним из лучших способов в Python. Это позволяет вам сосредоточиться на других аспектах вашей программы, не тратя время на написание дополнительных циклов и условий. Попробуйте этот метод в своих проектах, и вы увидите, как легко и быстро можно справиться с этой задачей!

Твои коллеги будут рады, поделись в

Автор урока

Дмитрий Комаровский
Дмитрий Комаровский

Автоматизация процессов
в КраснодарБанки.ру

Другие уроки курса "Python"

  1. Красивый вывод списка
  2. Сравнение def и lambda функций в Python
  3. Создание списка дат
  4. Инверсия списка и строки
  5. Декораторы в Python
  6. Закрытие файла в Python
  7. Работа с Event() в threading
  8. Оператор «моржа» (Walrus Operator)
  9. Комментарии в Python
  10. Оператор «or» в Python
  11. Список методов и атрибутов
  12. Глобальные переменные в Python
  13. Манипуляция формой массива в Numpy
  14. Генераторы в Python
  15. Переворот списка в Python
  16. Переопределение метода __floordiv__
  17. Копирование в Python
  18. Основы Python
  19. Получение имени функции с помощью inspect
  20. Подсказки типов в Python
  21. Оценка выражений генератора в Python
  22. Кортежи в Python: особенности и преимущества
  23. Нахождение максимального значения и его индекса в списке
  24. Декораторы с аргументами в Python
  25. Автоматизация скриптов на AWS Lightsail.
  26. Извлечение аудио из видео
  27. Метод join() с набором
  28. Возврат нескольких значений
  29. Переопределение метода delitem в Python
  30. Частичное применение функций в Python
  31. OrderedDict — упорядоченный словарь
  32. Метод get для словарей
  33. Исправление ошибки NameError
  34. Отправка POST-запроса в REST API
  35. Перегрузка операторов в Python
  36. Обработка исключений
  37. Гибкие функции Python
  38. Создание класса в Python
  39. Форматирование данных с pprint
  40. Виртуальное окружение Python
  41. Игра Виселица на Python
  42. Разделение строки на подстроки в Python
  43. Обработка исключений в Python 3
  44. Слияние словарей в Python 3.9
  45. Справка по импортированным модулям
  46. Генераторы в Python

Marketello читают маркетологи из крутых компаний