Курс 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-dateutil
  3. Область видимости переменных
  4. Обработка ошибок в Python
  5. Генерация фальшивых данных с Faker
  6. Профилирование данных с Pandas
  7. Работа с множествами в Python
  8. Измерение времени выполнения с помощью time
  9. Область видимости переменных
  10. Руководство по использованию Colorama
  11. Расчет времени выполнения программы
  12. Разность множеств
  13. Установка Git и AWS CLI
  14. Метод __ixor__ для побитового исключающего ИЛИ
  15. Конструктор в Python
  16. Преобразование букв в нижний регистр
  17. Принципы LSP и ISP в Python
  18. Преобразование текста в речь с Python
  19. Анализ текста на русском языке с помощью Pymystem3
  20. Извлечение данных из JSON
  21. Основы Python
  22. Запуск внешнего кода в Jupyter
  23. Конвертация текстовых чисел с помощью Numerizer
  24. Описание скриптов в README
  25. Строковое представление объектов
  26. Добавление элементов в список: append() vs extend()
  27. Копирование объектов в Python
  28. Создание веб-приложения с Flask
  29. inspect в Python: анализ кода
  30. Метод join() с набором
  31. Работа с SQLite в Python
  32. Библиотека sh: использование команд bash в Python
  33. Проверка элементов списка условием
  34. Чтение бинарного файла в Python.
  35. Объединение словарей в Python 3.5+
  36. Работа с zip()
  37. Pretty-printing JSON в Python
  38. Аннотации типов в Python
  39. Очистка списка от False, None, 0, «»
  40. Перевернуть список в Python
  41. Форматирование данных с помощью pprint
  42. Python Enumerate
  43. Создание GUI с Tkinter: Entry
  44. Метод join() для объединения элементов
  45. Форматирование строк в Python
  46. Переопределение метода __floordiv__

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