Курс 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"

  1. Транспонирование 2D-массива с помощью zip
  2. Обрезка изображения с Pillow
  3. Pillow: работа с изображениями
  4. Аннотации типов в Python
  5. Методы classmethod и staticmethod
  6. Генератор списка с условием if
  7. Генерация QR-кодов с Python
  8. Метод setdefault() в Python
  9. Тернарный оператор в Python
  10. Метод split() для разделения строк
  11. Библиотека Rich: форматирование текста
  12. Блок else в Python
  13. Работа с Telegram API на Python
  14. Применение команды break
  15. Протокол управления контекстом
  16. Класс-оболочка для словарей
  17. Регистрация на хакатоне
  18. Строковое представление объектов
  19. Генераторы списков
  20. globals и locals
  21. Присвоение и ссылки
  22. Установка и использование TensorFlow
  23. Область видимости переменных
  24. Python: цикл for и оператор присваивания
  25. Объединение списков с использованием itertools.chain
  26. Создание итерируемых объектов
  27. kwargs в Python
  28. Модуль Antigravity в Python 3
  29. Python 3.12: переиспользование кавычек
  30. Работа с коллекциями Python
  31. Отрицательные индексы списков
  32. Чтение бинарного файла в Python.
  33. Преобразование чисел в Python
  34. Логические значения в Python
  35. Установка и использование Python-dateutil
  36. Профилирование с Pandas
  37. Хэш-функции в Python
  38. Преобразование числа в список цифр
  39. Вставка переменных в шаблоны Flask
  40. Назначение максимального и минимального значения переменной в Python.
  41. Проверка элементов списка условием
  42. Аннотации типов в Python
  43. Оператор деления для класса Rational
  44. Класс UserDict: дополнительная функциональность
  45. Печать комбинаций в Python с Itertools
  46. Различия символов в Python
  47. Реализация метода __abs__ в Python
  48. Нахождение самого длинного слова в списке с помощью max
  49. Создание Telegram-бота на Python

Marketello читают маркетологи из крутых компаний