Курс 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. Измерение времени выполнения кода
  2. Создание тестовых данных с Faker
  3. Атрибуты класса и экземпляра
  4. Метод сравнения объектов в Python
  5. Проверка файла .py на синтаксис.
  6. Поиск email
  7. Работа с изображениями PIL
  8. Комментарии в Python
  9. Создание вложенных циклов for
  10. Удаление URL-адресов в Python
  11. Хеши в Python
  12. Оператор is в Python
  13. Решатель судоку на Python с pygame
  14. Списковое включение в Python
  15. Переопределение метода
  16. Иерархия классов в Python
  17. Асинхронное программирование с asyncio
  18. Замена текста с помощью sub
  19. Проверка наличия элемента в списке
  20. Переворот списка в Python
  21. Разделение строк в Python
  22. Избегайте изменяемых аргументов
  23. Импорт модулей в Python 3.12
  24. Преобразование числа в список цифр
  25. Numpy: использование Ellipsis
  26. Конкатенация строковых литералов
  27. Очистка входных данных
  28. Объединение словарей в Python
  29. Magic Commands — улучшение работы с Python
  30. Оператор «is not» в Python
  31. Перетасовка списков в Python
  32. Разделение строки с регулярными выражениями
  33. Проектирование Singleton с метаклассом
  34. Инверсия списка и строки
  35. Итераторы в Python
  36. Использование defaultdict в Python
  37. Оператор is в Python
  38. Явный импорт переменных
  39. Различия символов в Python
  40. Декоратор защиты анонимных пользователей
  41. CSV строка разделение в Python
  42. Выборка чисел
  43. Распаковка аргументов в Python

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