Курс Python → Функции map, filter и reduce
Функции map(), filter() и reduce() являются важной частью функционального программирования в Python. Они позволяют выполнять операции над элементами итерируемых объектов более элегантным и компактным способом, чем при помощи циклов или списков.
Функция map() применяет заданную функцию ко всем элементам итерируемого объекта и возвращает итератор с результатами. Например, можно применить функцию str.upper() ко всем элементам списка строк для перевода их в верхний регистр.
Функция filter() также принимает функцию и итерируемый объект, но возвращает только те элементы, которые удовлетворяют определенному условию, заданному в функции. Например, можно отфильтровать список чисел, оставив только четные числа.
Функция reduce() отличается от map() и filter() тем, что не возвращает итератор, а одно конечное значение. Она применяет функцию к первым двум элементам, затем к результату и следующему элементу и так далее, пока не останется только одно значение. Например, можно использовать reduce() для вычисления суммы всех элементов списка.
# Пример использования функции map()
numbers = [1, 2, 3, 4, 5]
squared_numbers = list(map(lambda x: x**2, numbers))
print(squared_numbers)
# Пример использования функции filter()
numbers = [1, 2, 3, 4, 5]
even_numbers = list(filter(lambda x: x % 2 == 0, numbers))
print(even_numbers)
# Пример использования функции reduce()
from functools import reduce
numbers = [1, 2, 3, 4, 5]
sum_of_numbers = reduce(lambda x, y: x + y, numbers)
print(sum_of_numbers)
Другие уроки курса "Python"
- Многопоточность в Python
- Переворот списка в Python
- Добавление элементов в список: append() vs extend()
- Преобразование в float
- Работа с модулем glob в Python
- Модуль subprocess: запуск внешних команд
- Сравнение строк в Python
- Форматирование строк в Python
- Обработка исключений
- Тип данных TypeVarTuple
- Роль запятой в Python
- Списковое включение в Python
- Работа с NumPy массивами
- Метод bool() в Python
- Построение графиков в терминале с bashplotlib
- Python: изменяемые и неизменяемые коллекции
- Работа с словарями в Python
- Разделение строк методом split()
- Основы работы со списками
- Работа с zip()
- Перегрузка операторов в Python
- Работа с пакетами
- Дефолтные параметры в Python
- Преобразование букв в нижний регистр
- Красивый вывод списка
- Создание новых списков через list comprehensions
- Методы classmethod и staticmethod
- Множественное назначение в Python
- Работа с файлами в Python
- Изменения в обработке логических значений
- Кортеж в Python: создание, доступ, изменение
- Создание новых функций с помощью functools.partial
- Работа с контекстным менеджером Pool
- Хранение переменных в Python.
- Создание Radio кнопок в tkinter
- Операторы Splat и splatty-splat
- Генераторные функции в Python
- Оптимизация параметров в Python
- Перебор элементов списка в Python
- Работа с WindowsPath()
- Поиск с помощью регулярных выражений
- Руководство по Pymorphy2
- История Python
- Модуль itertools: эффективная работа с итераторами
- Работа с типами данных в Python с помощью pydantic.
- Создание и обучение модели с Keras
- Создание директории в Python
- Работа с очередями в Python















