Посты с тэгом timeit


Python: модуль timeit - измерение времени выполнения маленьких фрагментов кода. Примеры использования.

Новое в версии 2.3

Этот модуль предоставляет простой способ замерить быстродействие некоторого фрагмента Python кода. Он имеет как интерфейс командной строки, так и интерфейс вызовов. Это позволяет избежать ряда общих ловушек для измерения времени выполнения.

Интерфейс вызовов

Модуль определяет следующий класс:

class timeit.Timer([stmt='pass'[, setup='pass'[, timer=]]])
Класс для измерения скорости выполнения маленьких фрагментов кода.

Конструктор принимает аргумент stmt содержащий выражение которое будет замерено, дополнительный аргумент setup представляющий собой выражение, выполняемое перед основным выражением. Функция таймера timer является платформозависимой (см. модуль doc string). Выражения могут содержать символы новой строки, если они не содержат многострочных строковых литералов.

Для измерения времени выполнения первого выражения необходимо использовать метод timeit(). Метод re


Stopwatch: Отличная альтернатива timeit

Собственно пост добра на тему. Покушав немного такого кактуса, как питоновский timeit, хочется заюзать что-нибудь другое.

И оно к счастью есть (: И называется, как можно понять из названия поста Stopwatch.

Юзается элементарно, но ради приличия наверное приведу пару примеров (:

С установкой никаких проблем нет, ибо обитает и easy_install-ах.

Можно использовать просто как секундомер :


>>> import stopwatch
>>> t = stopwatch.Timer() # Стартуем таймер
>>> t.elapsed # Сколько прошло времени
0.2
>>> t.elapsed
1.6
>>> str(t) # Красивый вывод
1.8 sec
>>> for i in xrange(0, 10000)
>>>    pass
>>> t.elapsed # Все еще работает
10.4
>>> t.stop() # Останавливаем таймер
>>> t.elapsed
10.6
>>> t.elapsed # Больше времени не меняется
10.6

Также м