Курс 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-dateutil
- Область видимости переменных
- Обработка ошибок в Python
- Генерация фальшивых данных с Faker
- Профилирование данных с Pandas
- Работа с множествами в Python
- Измерение времени выполнения с помощью time
- Область видимости переменных
- Руководство по использованию Colorama
- Расчет времени выполнения программы
- Разность множеств
- Установка Git и AWS CLI
- Метод __ixor__ для побитового исключающего ИЛИ
- Конструктор в Python
- Преобразование букв в нижний регистр
- Принципы LSP и ISP в Python
- Преобразование текста в речь с Python
- Анализ текста на русском языке с помощью Pymystem3
- Извлечение данных из JSON
- Основы Python
- Запуск внешнего кода в Jupyter
- Конвертация текстовых чисел с помощью Numerizer
- Описание скриптов в README
- Строковое представление объектов
- Добавление элементов в список: append() vs extend()
- Копирование объектов в Python
- Создание веб-приложения с Flask
- inspect в Python: анализ кода
- Метод join() с набором
- Работа с SQLite в Python
- Библиотека sh: использование команд bash в Python
- Проверка элементов списка условием
- Чтение бинарного файла в Python.
- Объединение словарей в Python 3.5+
- Работа с zip()
- Pretty-printing JSON в Python
- Аннотации типов в Python
- Очистка списка от False, None, 0, «»
- Перевернуть список в Python
- Форматирование данных с помощью pprint
- Python Enumerate
- Создание GUI с Tkinter: Entry
- Метод join() для объединения элементов
- Форматирование строк в Python
- Переопределение метода __floordiv__















