Курс 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. Функция count() в Python
  2. Определение имен функций
  3. Многострочные комментарии в Python
  4. Преобразование строки в число
  5. Модуль array: создание и использование массивов
  6. Функции с необязательными аргументами
  7. Оператор «or» в Python
  8. Принципы LSP и ISP в Python
  9. Использование подчеркивания в REPL
  10. Функция zip() — объединение последовательностей
  11. Подсчет количества элементов в списке
  12. Переворот строки
  13. Модуль math: основные функции
  14. Преобразование в float
  15. Python: Splat-оператор и splatty-splat
  16. Оператор «not» в Python
  17. Вычисление времени выполнения
  18. Подсчет элементов в Python
  19. Работа со строками в Python
  20. Форматирование строк в Python
  21. Обработка исключений в Python
  22. Работа с комплексными числами
  23. Изучение объектов с помощью dir()
  24. Метод gt в Python
  25. Слияние словарей в Python 3.9
  26. Основы работы с базами данных в Python
  27. Основы слова
  28. Проверка вхождения подстроки
  29. Отрицательные индексы списков в Python
  30. Удаление элемента по индексу в Python
  31. Создание и использование ChainMap
  32. Работа со словарями с defaultdict из collections
  33. Перевод текста с Python Translator
  34. Логирование с Logzero
  35. Python 3.12: Псевдонимы типов
  36. Избегайте двойного подчеркивания
  37. Управление контекстом выполнения кода
  38. Форматирование строк в Python
  39. Функции в Python: создание и вызов
  40. Операторы увеличения и уменьшения в Python
  41. Итерация по копии коллекции
  42. Курс Data Scientist в медицине
  43. Создание пустых функций и классов в Python
  44. Декораторы в Python
  45. Любовь к Python
  46. Частичное совпадение ввода
  47. Нахождение разницы между списками в Python
  48. Измерение времени выполнения кода с использованием time

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