Курс 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. Обратный список чисел
  2. Извлечение новостей с newspaper3k
  3. kwargs в Python
  4. Просмотр внешнего файла в Python
  5. Оптимизация гиперпараметров в Python
  6. Многострочные строки в Python
  7. Установка пакета в Python
  8. Поиск частого элемента
  9. Списки: объединение, изменение
  10. Модуль pprint
  11. Применение функции к списку
  12. Удаление ключа из словаря
  13. Объединение словарей в Python 3.5+
  14. Получение текущей директории
  15. Копирование объектов в Python
  16. Изменение списка срезом
  17. Форматирование строк с f-строками
  18. Цепные операции в Python
  19. Обработка ошибок в Python
  20. Преобразование вложенного списка
  21. Lambda-функция в Python: использование с map() и sum()
  22. Работа со строками в Python
  23. Метод append() для списка
  24. Переопределение метода divmod
  25. Создание пользовательской коллекции в Python
  26. Получение текущего времени в Python
  27. Обработка исключений в Python
  28. Объединение, распаковка и деструктуризация
  29. Оператор «or» в Python
  30. Подсказки типов в Python
  31. Retrying в Python: повторные вызовы
  32. Генераторы в Python
  33. Сортировка элементов в Python
  34. Экспорт данных с помощью writefile
  35. Присвоение и ссылки
  36. Оператор += для объединения строк
  37. Блок else в Python
  38. Инициализация переменных
  39. Оптимизация памяти с __slots__
  40. Логические значения в Python
  41. Метод rlshift для битового сдвига
  42. Вычисление времени выполнения
  43. Явный импорт переменных
  44. Создание класса в Python
  45. Декораторы в Python
  46. Создание GUI на Tkinter
  47. Измерение времени выполнения кода
  48. Возврат нескольких значений

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