Я сравнил производительность функции mean модуля statistics с простым методом sum(l)/len(l) и обнаружил, что функция mean по какой-то причине очень медленная. Я использовал timeit с двумя фрагментами кода ниже, чтобы сравнить их, кто-нибудь знает, что вызывает огромную разницу в скорости выполнения? Я использую Python 3.5.
from timeit import repeat
print(min(repeat('mean(l)',
'''from random import randint; from statistics import mean; \
l=[randint(0, 10000) for i in range(10000)]''', repeat=20, number=10)))
Вышеприведенный код выполняется примерно за 0,043 секунды на моей машине.
from timeit import repeat
print(min(repeat('sum(l)/len(l)',
'''from random import randint; from statistics import mean; \
l=[randint(0, 10000) for i in range(10000)]''', repeat=20, number=10)))
Вышеприведенный код выполняется примерно на 0,000565 секунд на моей машине.