Курс 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. Список переменных с %who
  3. Установка и использование модуля Wikipedia
  4. Python-dateutil — работа с датами
  5. Тестирование функции сложения
  6. Создание вложенных циклов for
  7. Вычисление времени выполнения
  8. Отправка POST запроса на сервер.
  9. Создание таблиц в терминале с PrettyTable
  10. Ключевое слово global в Python
  11. Проверка типа объекта в Python
  12. Обновление и получение данных в SQLite
  13. Оператор «not» в Python
  14. Декораторы в Python
  15. Метод rsub в Python: расширение функциональности вычитания
  16. Python Тесты и Гайды
  17. Основы слова
  18. Функции any() и all() в Python
  19. Поиск повторов в списке
  20. Удаление ключа из словаря
  21. Получение локальных переменных в Python
  22. Вызов функций по строке в Python.
  23. Создание коллекций из выражения-генератора
  24. Методы и функции в Python
  25. Работа с NumPy.linalg
  26. Копирование объектов в Python
  27. Эффективная конкатенация строк в Python
  28. Проверка типов с использованием isinstance
  29. Логические значения в Python
  30. Определение индекса элемента списка
  31. Оптимизация памяти в Python
  32. Импорт классов из другого файла
  33. Бесконечная проверка в Python
  34. Удаление элементов из списка в Python
  35. Кортеж в Python: создание, доступ, изменение
  36. Модуль os: работа с файлами и папками
  37. Colorama: окрашивание текста в Python
  38. Скачать видео с YouTube
  39. Установка и использование pyshorteners
  40. Хранение переменных в Python.

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