Python Glossary English

Python 3.8+mathпонятие

math.prod

агрегация

Возвращает произведение всех элементов итерируемого. Python 3.8+. math.prod([2, 3, 4]) → 24.

Синтаксис

math.prod(iterable, start=1)

У пустого итерируемого произведение равно start, то есть 1 — это математическая договорённость, а не баг; если по условию задачи пустой вход должен давать 0, проверяйте его сами. Аргумент start здесь умножается, а не прибавляется, как в sum(). На целых результат точный при любой длине чисел, а на float ошибки округления копятся, поэтому факториал лучше считать через math.factorial().

Примеры

import math
print(math.prod([1,2,3,4,5]))  # → 120
print(math.prod(range(1,6)))   # → 120 (= 5!)
print(math.prod([1.5, 2.0, 3.0]))  # → 9.0
print(math.prod([2]*10))       # → 1024 (2^10)
print(math.prod([], start=5))  # → 5
print(math.prod(range(1,8)))   # → 5040 (= 7!)

См. также

Открыть в полном глоссарииdocs.python.orgСообщить о неточности