Курс Python → Фильтрация списков с itertools

Модуль itertools в Python предоставляет множество полезных функций для работы с итерируемыми объектами. Одной из таких функций является функция filterfalse, которая позволяет фильтровать элементы итерируемого объекта согласно заданному условию, без необходимости использования цикла.

Для примера, допустим у нас есть два списка — список leaders с именами лидеров и список selectors с их идентификаторами. Мы хотим отфильтровать список leaders таким образом, чтобы в нем остались только имена лидеров, у которых идентификатор равен единице.


import itertools

leaders = ['Alice', 'Bob', 'Charlie', 'David']
selectors = [0, 1, 1, 0]

filtered_leaders = list(itertools.compress(leaders, selectors))
print(filtered_leaders)

В данном примере мы использовали функцию compress из модуля itertools, которая фильтрует элементы списка leaders согласно значениям из списка selectors. Результатом выполнения данного кода будет список filtered_leaders, содержащий только имена лидеров, у которых идентификатор равен единице — [‘Bob’, ‘Charlie’].

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

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

Автор урока

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

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

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

  1. Улучшение читаемости кода в Python
  2. Классы данных в Python
  3. Генераторные функции в Python
  4. Эффективная конкатенация строк с использованием join()
  5. Профилирование кода на Python
  6. Функция с *args.
  7. Работа с словарями в Python
  8. Поиск подстроки в строке
  9. Создание GUI на Tkinter
  10. Оператор is в Python
  11. Ускорение кода с помощью векторизации
  12. Генераторы и сеты в Python
  13. Вычисление натурального логарифма в NumPy
  14. Создание namedtuple из словаря
  15. Атрибуты объекта в Python
  16. Python: отсутствие точек с запятыми
  17. Python Enum Weekday Usage
  18. Работа с файлами в Python
  19. Блок else в Python
  20. Декораторы в Python
  21. Установка виртуального окружения Python
  22. Библиотека sh: использование команд bash в Python
  23. Оптимизация памяти с помощью __slots__
  24. Подписка на Kaspersky Team
  25. Проверка типа данных
  26. Декоратор проверки активности
  27. Конкатенация строк в Python
  28. Копирование файлов с shutil()
  29. Генератор списка с условием if
  30. Функция zip() в Python
  31. Нарезка списков в Python
  32. Работа с CSV файлами в Python
  33. Поиск наиболее частого элемента списке
  34. Сравнение def и lambda-функций
  35. Хранение переменных в Python.
  36. Генераторы в Python
  37. Документация функции help() в Python
  38. PATCH-запрос с библиотекой requests
  39. Создание класса очереди
  40. Переопределение оператора % для объектов
  41. Многопоточность в Python
  42. Создание графиков в терминале
  43. Enum в Python
  44. Оператор zip в Python
  45. Работа с коллекциями Python
  46. Новшества Flask 2.0
  47. Оператор del в Python

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