Курс 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. Работа с географическими данными в Python
  3. Добавление Progressbar в Python
  4. Управление экспортом элементов
  5. Получение обратного списка чисел
  6. Проектирование Singleton с метаклассом
  7. IPython и Jupyter Notebook: руководство
  8. Основы работы со строками в Python
  9. Установка библиотек в Python
  10. Удаление элемента из списка
  11. Получение срезов итераторов
  12. Big O оптимизация
  13. Измерение времени выполнения кода с использованием time
  14. Нахождение максимального значения и его индекса в списке
  15. Декораторы в Python
  16. Переворот строки с использованием цикла
  17. Метод radd для пользовательских чисел
  18. Оператор space-invader
  19. JSON в Python: модуль, dump, dumps, load
  20. Генераторы в Python
  21. Работа с массивами в Python
  22. Ускорение кода с помощью векторизации
  23. Отступы в Python
  24. Оператор zip в Python
  25. Создание коллекций из выражения-генератора
  26. Функциональное программирование.
  27. Операторы сравнения в Python
  28. PATCH-запрос с библиотекой requests
  29. Итераторы в Python
  30. Оператор (*) в Python
  31. Оператор is в Python
  32. Функции range() в Python
  33. Модуль future Python
  34. Библиотека sh: удобные команды терминала
  35. Преобразование регистра символов
  36. Сортировка списка по индексам
  37. Работа с файлами в Python
  38. Красивый вывод списка
  39. Просмотр атрибутов и методов класса
  40. Сравнение строк в Python
  41. Оператор in в Python
  42. Нахождение пересечения множеств
  43. Запуск Python из интерпретатора
  44. Оператор Walrus в Python 3.8
  45. Метод join() для объединения элементов строки
  46. Перегрузка операторов в Python

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