Курс 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
- Функция reduce() из модуля functools
- Работа с контекстными переменными
- Работа с модулем os в Python
- Изменение регистра данных
- Использование модуля __future__
- Ограничение ресурсов в Python
- Установка и использование TensorFlow
- Создание и использование ChainMap
- Доступ к локальным переменным
- Разделение строк в Python
- Удаление элементов из списка в Python
- Роль ключевого слова self
- Упрощенный вывод данных в Python
- Решатель судоку на Python с pygame
- Область видимости переменных
- Подсчет вхождений элементов
- Создание спинбокса в tkinter
- Генерация UUID в Python
- Особенности множеств в Python
- Объединение словарей в Python 3.5+
- Работа с датой и временем в Python
- Работа с комплексными числами в Python
- Переменные в Python: сокращение гласных
- Итераторы в Python
- Функции map, filter и reduce
- Область видимости переменных
- Сглаживание списка
- Генерация строк с .join()
- Работа с WindowsPath()
- Обработка ошибок в JSON данных
- Работа с байтовыми строками в Python
- Избегайте двойного подчеркивания
- Преобразование регистра строк
- Преобразование чисел в восьмеричную строку
- Управление сессиями в Python
- Работа с defaultdictами в Python
- Генератор чисел Фибоначчи
- ROT13 Шифр Цезаря в Python
- Декоратор проверки активности
- Принципы программирования
- Автоматизация скриптов на AWS Lightsail.
- Работа с временем в Python
- Работа со стеком в Python
- Отправка POST запроса на сервер.















