Правильный ответ на ваш вопрос - использовать statistics.mean
. Но для забавы, вот версия означает, что не использует функцию len()
, поэтому ее (например, statistics.mean
) можно использовать на генераторах, которые не поддерживают len()
:
from functools import reduce
from operator import truediv
def ave(seq):
return truediv(*reduce(lambda a, b: (a[0] + b[1], b[0]),
enumerate(seq, start=1),
(0, 0)))