Курс 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"
- Модуль itertools: комбинации и перестановки
- Установка максимального количества цифр
- Оператор += в Python
- Работа со случайными элементами
- Библиотека schedule: планировщик задач
- Проверка типов с помощью isinstance
- Декораторы с аргументами в Python
- Применение функции к элементам списка
- Оператор Walrus в Python
- Применение функции map() с лямбда-функциями
- Открытие, чтение и закрытие файла
- Копирование в Python
- Замена текста с re.sub()
- Основы слова
- Список и кортеж в Python
- Цепные операции в Python
- Работа с JSON данными в Python
- Создание итератора
- Декоратор total_ordering для класса Point
- Курс по дообучению ChatGPT
- Подсказки типов в Python
- Создание графиков в терминале
- Генераторы в Python
- Именованные кортежи в Python
- Вложенные генераторы в Python
- Изменяемые и неизменяемые объекты
- Изменение IP-адреса в Python
- Сравнение def и lambda функций в Python
- Парсинг веб-страниц с Beautiful Soup
- Списки в Python
- Переопределение метода delitem в Python
- Избегайте использования goto
- Функция product() в Python
- Значения по умолчанию в Python
- Работа с срезами в Python
- Библиотека wikipedia для Python
- Отладка производительности Python
- Функции map, filter, reduce
- Сравнение строк в Python
- Оператор «or» в Python
- Замена текста с помощью sub
- Запуск Python из интерпретатора
- Получение текущей даты и времени
- Настройка шрифта и цвета в Tkinter
- Избегание циклических зависимостей классов в Python















