Курс 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"
- Retrying в Python: повторные вызовы
- Поиск с помощью регулярных выражений
- Работа с WindowsPath()
- Использование подчеркивания в REPL
- Python и Монти Пайтон
- Группы исключений в Python
- Копирование и вставка текста в Python
- Работа с YAML в Python
- Итерация по копии коллекции
- UserString в Python
- Логирование с Loguru
- Метод add для класса Vector
- Конкатенация строк в Python
- Форматирование данных с pprint
- Преобразование букв в нижний регистр
- Декораторы в Python
- Генерация UUID в Python
- Сглаживание списка
- Colorama: окрашивание текста в Python
- Оператор * в Python
- Поиск самого длинного слова в списке с использованием max()
- Python enumerate() функции
- Преобразование данных в Python
- Декоратор для группы пользователей в Django
- Списковые включения в Python
- Функции с необязательными аргументами
- Запуск внешнего кода в Jupyter
- Библиотека schedule: планировщик задач
- Преобразование Word в PDF с Spire.Doc
- Область видимости переменных
- Списки в Python
- Defaultdict в Python
- Подсчет элементов в Python
- Оптимизация гиперпараметров в Python
- Работа с датой и временем в Python
- Преобразование чисел в Python
- Итераторы в Python
- Очистка данных в Python
- Создание словарей в Python
- Присвоение значений переменным в Python
- Хеши в Python
- Поиск HTML-элементов с BeautifulSoup
- Поиск анаграмм с Counter
- Обратный список чисел
- Импорт модулей в Python 3.12
- Ускорение обработки данных с %autoawait
- Работа с срезами в Numpy















