Курс 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. Создание функций с произвольным количеством аргументов
  3. Добавление Progressbar в Python
  4. Работа с базами данных SQLite
  5. Передача аргументов через **arguments
  6. Оператор * в Python
  7. Деление в Python
  8. JMESPath в Python
  9. Python Calendar Usage
  10. Синтаксис переменных цикла в Python
  11. Создание OrderedDict
  12. Операторы увеличения и уменьшения переменной
  13. Отправка POST-запроса в REST API
  14. Область видимости переменных в Python
  15. Присвоение значений переменным в Python
  16. Создание списков в Python
  17. Значения по умолчанию в Python
  18. Область видимости переменных
  19. Порядок операций в Python
  20. Декораторы с аргументами в Python
  21. Извлечение новостей с помощью newspaper3k
  22. Списковые включения в Python
  23. Оператор Walrus в Python 3.8
  24. Перемешивание списка с shuffle()
  25. Оптимизация гиперпараметров с Scikit Optimize
  26. Разница между датами
  27. Секреты Python
  28. Создание класса в Python
  29. Структура строк в Python
  30. Поиск шаблона в строке
  31. Особенности множеств в Python
  32. Метод lt для сортировки объектов
  33. Копирование объектов в Python
  34. Декораторы в Python
  35. Подчеркивание в REPL
  36. Фильтры Pillow: NEAREST, BILINEAR, BICUBIC
  37. Взаимодействие с внешними процессами в Python
  38. Оператор del в Python
  39. GitHub в Telegram: подписка на уведомления
  40. Блок else в обработке исключений
  41. Функции range() в Python
  42. Работа со словарями
  43. Подсчет элементов в списке с Counter
  44. Создание и удаление объектов

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