Python Glossary English

все Python 3timeitфункция

timeit.timeit()

замер времени

Выполняет фрагмент кода number раз и возвращает общее время в секундах — для замера быстродействия.

Синтаксис

timeit.timeit(stmt='pass', setup='pass', timer=default_timer, number=1000000, globals=None) -> float

Результат — суммарное время всех повторов, а не одного: по умолчанию number=1 000 000, и медленный код замер «зависнет». Код в строке не видит ваших переменных — передайте setup='from __main__ import f' или globals=globals(), либо функцию без аргументов. На время замера отключается сборщик мусора, поэтому цифры бывают оптимистичнее реальных.

Примеры

import timeit
t = timeit.timeit('sum(range(100))', number=1000)
print(type(t).__name__)  # → float
print(t)  # → ? время зависит от машины
import timeit
data = list(range(100))
t = timeit.timeit('sorted(data)', globals={'data': data}, number=100)
print(t > 0)  # → True
timeit.timeit('sorted(data)', number=1)  # → NameError: name 'data' is not defined

См. также

Частые ошибки

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