Курс Python → Функция reduce() из модуля functools

Функция reduce() в Python из модуля functools применяет указанную функцию к элементам последовательности, последовательно объединяя их в одно значение. При использовании reduce() сначала применяется функция к первым двум элементам, затем результат этой операции со следующим элементом и так далее, пока не будет обработан весь список.

Например, предположим, у нас есть список чисел [1, 2, 3, 4, 5], и мы хотим найти их произведение с использованием функции reduce(). Мы можем использовать лямбда-функцию для умножения двух чисел и передать ее в reduce():


from functools import reduce
numbers = [1, 2, 3, 4, 5]
product = reduce(lambda x, y: x * y, numbers)
print(product)

В данном примере лямбда-функция принимает два аргумента x и y и возвращает их произведение. Функция reduce() последовательно применяет эту функцию ко всем элементам списка numbers, что в результате дает произведение всех чисел.

Использование функции reduce() может быть удобным при работе с операциями, требующими последовательного объединения значений, таких как нахождение суммы, произведения, минимума или максимума элементов списка. Однако, следует помнить, что начиная с Python 3, функция reduce() была перемещена из встроенных функций в модуль functools.

Твои коллеги будут рады, поделись в

Автор урока

Дмитрий Комаровский
Дмитрий Комаровский

Автоматизация процессов
в КраснодарБанки.ру

Другие уроки курса "Python"

  1. List Comprehension Tutorial
  2. Руководство по Pymorphy2
  3. Объединение списков в строку
  4. Основные функции и модули Python
  5. Обработка исключений с блоком else
  6. Python: Фильтрация списков с помощью filter()
  7. Область видимости переменных
  8. Строковое представление объектов
  9. Особенности запятых в Python
  10. Многопоточность и асинхронное программирование в Python
  11. Список импортированных модулей в Python
  12. Измерение времени выполнения кода
  13. Antigravity модуль
  14. Сортировка HTML по CSS-селектору
  15. Установка Python — Простое руководство
  16. Метод add для класса Vector
  17. Генераторы словарей и множеств
  18. Измерение времени выполнения кода
  19. Python groupby() из itertools: работа с повторяющимися элементами
  20. Сохранение Unicode в JSON
  21. Обработка ошибок в Python
  22. Генерация случайных данных в NumPy
  23. Объединение словарей в Python 3.5+
  24. Декораторы в Python
  25. Оператор match в Python
  26. Замена переменных в Python
  27. Итерации в Python
  28. ROT13 Шифр Цезаря в Python
  29. Python: изменяемые и неизменяемые коллекции
  30. Фильтрация списка чисел
  31. Сравнение строк в Python
  32. Решатель судоку на Python с pygame
  33. Группировка элементов в словарь
  34. Проверка типа данных
  35. Форматирование строк в Python
  36. Объединение коллекций в Python
  37. Python и Монти Пайтон
  38. Сортировка элементов в Python
  39. Названия столбцов в Python таблицах
  40. Закрытие файла в Python
  41. Измерение времени выполнения кода
  42. Работа с NumPy.linalg
  43. Concrete Paths в Python
  44. Функции высшего порядка в Python
  45. Оператор «моржа» (Walrus Operator)
  46. Аннотации типов в Python
  47. Преобразование текста в речь с Python
  48. Работа со строками в Python
  49. Создание словаря с значением по умолчанию

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