Курс 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. Оператор del в Python
  4. Метод rrshift для пользовательских объектов
  5. Работа с множествами в Python
  6. Оптимизация создания строк
  7. Подсчет элементов в Python
  8. Работа с классами данных
  9. Поиск подстроки в строке
  10. PEP-401: оператор
  11. Создание вкладок с TKinter
  12. Фильтрация последовательности
  13. Оператор walrus в Python
  14. Навыки Python: строки, типы данных
  15. Очистка входных данных
  16. Генераторы в Python
  17. Изменения в обработке логических значений
  18. Работа с очередями в Python
  19. Курсы Яндекс Практикум
  20. Удаление ресурса в Python
  21. Использование функции product
  22. Работа с Event() в threading
  23. Ключевое слово global в Python
  24. Работа с типами данных в Python с помощью pydantic.
  25. Отделение звука от видео
  26. Преобразование символов с помощью map
  27. Модуль subprocess: запуск внешних команд
  28. Установка User-Agent в Python
  29. Python 3.12: переиспользование кавычек
  30. Переопределение метода __rshift__
  31. inspect в Python: анализ кода
  32. Раздувающийся словарь в Python
  33. Numpy: разбиение массивов
  34. Проверка ввода с помощью isdigit
  35. Именованные срезы в Python
  36. Хэш-функции и метод цепочек
  37. Удаление дубликатов из списка с помощью dict.fromkeys
  38. Python Enum Weekday Usage
  39. Получение ID текущего процесса
  40. Многострочные комментарии в Python
  41. Python: отсутствие точек с запятыми
  42. Извлечение аудио из видео
  43. Парсинг статей с Newspaper3k
  44. Функция reversed() в Python
  45. Проверка памяти объекта

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