Курс 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
- Работа с файлами в Python
- Переопределение метода delitem в Python
- Оператор @ для умножения матриц
- Хранение переменных в Python.
- Операции с кортежами
- Ускорение кода с помощью векторизации
- Динамическая типизация в Python
- Поиск частого элемента
- Создание панели меню Tkinter
- Метод rsub в Python: расширение функциональности вычитания
- Генераторы данных
- Перегрузка операторов в Python
- Отправка POST-запроса в REST API
- Оболочка Python
- Обработка исключений в Python
- Метод get() для словарей
- Переворот строки с использованием цикла
- Генераторы списков
- Работа с YAML в Python
- Обработка исключений в Python
- Атрибуты класса и экземпляра
- Удаление дубликатов в pandas
- Использование подчеркивания в REPL
- Циклы for в Python
- Метод ipow для возведения в степень
- Нахождение отличий в списках
- Структуры данных в Python
- Добавление элементов в список
- Основные операции с библиотекой Numpy
- Метод __index__ в Python
- Функции map() и reduce() в Python
- Удаление ключей из словаря
- Оператор распаковки в Python
- Переопределение метода __and__
- Добавление вложенных списков
- Метод join() для объединения элементов
- Оптимизация памяти с __slots__
- Асинхронное выполнение задач в процессах
- Скачать видео с YouTube
- Форматирование данных с помощью pprint
- Flask: создание веб-приложений
- Изменение элемента списка
- Создание таблиц в Python с PrettyTable















