Курс 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. Многопоточность в Python
  2. Переворот списка в Python
  3. Добавление элементов в список: append() vs extend()
  4. Преобразование в float
  5. Работа с модулем glob в Python
  6. Модуль subprocess: запуск внешних команд
  7. Сравнение строк в Python
  8. Форматирование строк в Python
  9. Обработка исключений
  10. Тип данных TypeVarTuple
  11. Роль запятой в Python
  12. Списковое включение в Python
  13. Работа с NumPy массивами
  14. Метод bool() в Python
  15. Построение графиков в терминале с bashplotlib
  16. Python: изменяемые и неизменяемые коллекции
  17. Работа с словарями в Python
  18. Разделение строк методом split()
  19. Основы работы со списками
  20. Работа с zip()
  21. Перегрузка операторов в Python
  22. Работа с пакетами
  23. Дефолтные параметры в Python
  24. Преобразование букв в нижний регистр
  25. Красивый вывод списка
  26. Создание новых списков через list comprehensions
  27. Методы classmethod и staticmethod
  28. Множественное назначение в Python
  29. Работа с файлами в Python
  30. Изменения в обработке логических значений
  31. Кортеж в Python: создание, доступ, изменение
  32. Создание новых функций с помощью functools.partial
  33. Работа с контекстным менеджером Pool
  34. Хранение переменных в Python.
  35. Создание Radio кнопок в tkinter
  36. Операторы Splat и splatty-splat
  37. Генераторные функции в Python
  38. Оптимизация параметров в Python
  39. Перебор элементов списка в Python
  40. Работа с WindowsPath()
  41. Поиск с помощью регулярных выражений
  42. Руководство по Pymorphy2
  43. История Python
  44. Модуль itertools: эффективная работа с итераторами
  45. Работа с типами данных в Python с помощью pydantic.
  46. Создание и обучение модели с Keras
  47. Создание директории в Python
  48. Работа с очередями в Python

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