среда, 15 июня 2011 г.

python: сравнение времени выполнения datetime.now() и time.time()

В исходной задаче необходимо получать разницу между вызовами функций. Для минимизации влияния нужно определить какая из функций выполняется быстрее. Кандидаты: datetime.now() и time.time().
$ python -m timeit -n 1000000 -s 'from datetime import datetime' 'datetime.now()'
1000000 loops, best of 3: 4.3 usec per loop

$ python -m timeit -n 1000000 -s 'import time' 'time.time()'
1000000 loops, best of 3: 1.27 usec per loop
time.time() в выиграше

Время выполнения можно еще немного сократить, если использовать следующий хинт:
from datetime import datetime
import time

dt = datetime.now
tt = time.time

Новый результат:
$ python -m timeit -n 1000000 -s 'from pytt import dt' 'dt()'
1000000 loops, best of 3: 4.02 usec per loop
python -m timeit -n 1000000 -s 'from pytt import tt' 'tt()'
1000000 loops, best of 3: 0.937 usec per loop

0 комментариев:

Отправить комментарий