← Все вопросы

Как замерить время выполнения участка кода?

Задан 5 месяцев назад641 просмотров3 ответа
11

Хочу понять, сколько миллисекунд работает моя функция, чтобы сравнить два варианта. Какой способ самый правильный?

3 ответа

18
✓ Принятый ответ — помог автору

Для замера интервала бери time.perf_counter() — он самый точный для этого:

import time

start = time.perf_counter()
# ... код, который меряем ...
elapsed = time.perf_counter() - start
print(f'{elapsed:.4f} сек')

Не используй для этого time.time() — он может скакать при переводе системных часов. А если надо аккуратно сравнить две маленькие функции с усреднением по многим прогонам — модуль timeit (timeit.timeit(...)).

6

time.perf_counter() до и после, разницу выводишь.

5

В Jupyter/IPython ещё удобно %timeit твоя_функция() — сам сделает много прогонов и посчитает среднее.

Ваш ответ

Войдите, чтобы ответить на вопрос.
Поддержать проект