Курс 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. Отображение графиков в Jupyter с Matplotlib
  2. Создание директории в Python
  3. Пересечение списков с использованием множеств
  4. Проверка подстроки в строке
  5. Python: Splat-оператор и splatty-splat
  6. Работа со словарями
  7. Создание новых функций через partial
  8. Работа со стеком в Python
  9. Использование html-скриптов в Jupyter Notebook
  10. Генераторные функции в Python
  11. Сортировка элементов с OrderedDict
  12. Функции min(), max(), sum()
  13. Метод __index__ в Python
  14. Создание списков в Python
  15. Операции с комплексными числами
  16. Удаление ключа из словаря
  17. HTTP-запросы с библиотекой Requests
  18. Работа с очередями в Python
  19. Работа со словарями в Python
  20. Основы работы с os
  21. Контекстный менеджер в Python
  22. Логирование с Logzero: ротация файла
  23. Модуль os: работа с файлами и папками
  24. Генератор надежных паролей
  25. Форматирование строк в Python
  26. Работа со словарями с defaultdict из collections
  27. Метод index() в Python
  28. Переименование файлов в Python
  29. Хранение данных
  30. Сортировка данных с лямбда-функциями
  31. Работа с Enum в Python3.
  32. Метод rpow в Python
  33. Модуль xkcd: добавление юмора в Python
  34. Оператор assert в Python
  35. Измерение времени выполнения кода в Python
  36. Проверка файла .py на синтаксис.
  37. Область видимости переменных
  38. Инверсия списка и строки в Python
  39. Метод lt для сортировки объектов
  40. Методы HTTP запросов в Flask
  41. Команда %dhist — список посещенных каталогов
  42. Решатель судоку на Python с pygame
  43. Удаление символа из строки
  44. Асинхронное программирование с asyncio
  45. Методы работы со строками в Python
  46. Лямбда-функции в Python

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