Курс 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"
- Декораторы в Python
- Сравнение def и lambda функций в Python
- Перетасовка списков в Python
- Создание новых списков в Python
- Сокращение ссылок с pyshorteners
- Операции с комплексными числами
- Получение частей дроби
- Слияние словарей в Python 3.9
- Переворот последовательности
- TON Smart Challenge #2: участие и подготовка
- Операции со строками в Python
- Исключение NotImplementedError
- Замена символов в строке
- Метод ipow для возведения в степень
- Тестирование времени с Freezegun
- F-строки в Python 3.8
- Python: отличительная особенность — отступы
- Работа с контекстными менеджерами
- Многострочные комментарии в Python
- Оператор * в Python
- Итерации в Python
- Вывод с переменной через запятую
- Хранение переменных в Python.
- Замена текста с re.sub()
- Форматирование строк в Python
- Метод __ixor__ для побитового исключающего ИЛИ
- Метод Event.wait() в Python
- Структуры данных в Python
- Работа с кортежами в Python
- Переопределение метода __floordiv__
- Вызов внешних программ в Python с помощью sh
- Создание обратного итератора
- Работа с файлами в Python
- Многопоточность и асинхронное программирование в Python
- Сравнение неупорядоченных списков
- Модуль antigravity: генерация координат
- Функции с необязательными аргументами
- Официальный канал Python в Telegram
- Цикл for в Python
- Преобразование данных в Python
- Объединение списков в Python
- Установка библиотек в Python
- Аннотации типов в Python















