Курс 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. Метод append() для списка
  2. Сравнение строк в Python
  3. Применение функции map() в Python
  4. Выражения-генераторы в Python
  5. Генераторы в Python
  6. Управление браузером с Selenium
  7. Управление пакетами с pip
  8. Декораторы в Python
  9. Многострочные комментарии в Python
  10. Стать Python-разработчиком
  11. Переопределение метода __eq__
  12. Искажение имен в Python
  13. Хешируемые ключи в Python
  14. Операции с кортежами
  15. Работа с геоданными с помощью geopy
  16. Атрибуты массивов в Numpy
  17. Профилирование с Pandas
  18. Философия Python
  19. Функциональное программирование.
  20. Создание директории в Python
  21. Создание новых списков в Python
  22. Переменная Шредингера
  23. Анализ текста на русском языке с помощью Pymystem3
  24. Приоритет операций в Python
  25. Работа с GitHub в Telegram
  26. Форматирование вывода списков
  27. Работа с библиотекой xkcd
  28. Освобождение памяти в Python
  29. Нахождение максимального значения и его индекса в списке
  30. Объединение коллекций в Python
  31. Проектирование Singleton с метаклассом
  32. Функция all() в Python
  33. Обработка элементов в Python
  34. Создание вкладок с TKinter
  35. Получение текущей даты и времени с помощью datetime
  36. Избегайте пустого списка
  37. Codecademy в Telegram
  38. Создание задания в Cron
  39. Логирование с Loguru
  40. Логирование с Logzero
  41. Нахождение хеша для бесконечности и NaN в Python
  42. Сложные типы данных в Python
  43. Печать календаря
  44. Тип CodeType в Python.
  45. Декораторы в Python
  46. Удаление элемента по индексу в Python
  47. Основы работы со строками в Python

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