Почему это не займет столько же времени? Это как-то связано с другими программами, фоновыми процессами и т. д.?
import time
def calcProd():
'Calculates the product of numbers from 1 through 100,000'
product = 1
for x in range(1, 100000):
product *= x
return product
start = time.time()
calcProd()
end = time.time()
elapsed = round((end - start), 7)
print(elapsed)
и время (в секундах) протестировано следующим образом:
24.1244698
22.9401324
23.3407295
23.2885954
23.3982868
21.177716
Я знаю, что это может показаться тривиальным вопросом, но потерпите меня. И есть ли более эффективный способ выполнить ту же функцию? Спасибо
* Основная часть этого вопроса заключалась в том, чтобы вызвать дискуссию о том, почему время так сильно различается при многократном запуске одной и той же программы. Последняя часть была скорее спонтанным вопросом.
math.factorial()
. - person Martijn Pieters   schedule 18.12.2016