Курс 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"
- Метод enumerate() в Python
- Срез списка в Python
- Модуль subprocess: запуск внешних команд
- Переопределение метода __eq__
- Метод join() с набором
- Структурирование данных с Pydantic
- Python UserString — создание подклассов строк
- Копирование объектов в Python
- Определение основы слова с showballstemmer
- Оптимизация гиперпараметров в Python
- Работа с файлами и директориями в Python.
- Модуль Operator в Python
- Установка Python3.7 и PIP
- Создание пустых функций и классов в Python
- Оператор морж в Python 3.8
- Работа со списками
- Блок try…finally в Python
- Векторизация в Python с NumPy.
- Генераторы в Python
- Игра Виселица на Python
- Аннотации типов в Python
- Переопределение метода sub
- Работа с файловой системой в Python
- Присвоение и ссылки
- Константы в модуле cmath
- Работа с комплексными числами
- Форматирование вывода с F-строками
- Проверка памяти объекта
- Метод join для наборов
- Вставка переменных в шаблоны Flask
- Операторы += в Python
- Проверка наличия элемента в списке
- Создание матрицы в Python
- Создание и обучение модели с Keras
- Поиск уникальных элементов строкой в Python
- Каналы Senior: Python, Java, Frontend, SQL, C++
- Удаление специальных символов
- Подчеркивание в REPL
- Вызов функций по строке в Python.
- Метод count() для списков
- Использование type hints
- Копирование в Python
- Работа с временем в Python
- Логирование в Python
- Python Translator: создание локальных переводчиков
- Операция += для списков
- Работа с комбинациями в Python.
- Иерархия классов в Python















