все Python 3timeitпонятие
timeit.Timer
замер времени
Класс для многократного замера одного фрагмента кода; методы timeit(), repeat() и autorange().
Синтаксис
t = timeit.Timer(stmt='pass', setup='pass', timer=default_timer, globals=None); t.timeit(number=1000000); t.autorange()
Удобен, когда один и тот же замер нужен несколько раз: setup выполняется при каждом вызове timeit(), но код компилируется один раз. autorange() сам подбирает number так, чтобы замер занял не меньше 0,2 секунды, и возвращает пару (number, время). print_exc() печатает трассировку с исходной строкой фрагмента, а не служебного шаблона.
Примеры
import timeit
t = timeit.Timer('"-".join(map(str, range(50)))')
number, total = t.autorange()
print(type(number).__name__, type(total).__name__) # → int float
print(number) # → ? зависит от скорости машины
import timeit
t = timeit.Timer(lambda: sorted([3, 1, 2]))
print(t.timeit(number=10) >= 0) # → True
См. также
Открыть в полном глоссарииdocs.python.orgСообщить о неточности