ℹ️ Иногда time.time() или timeit — это слишком просто. А хочется понимать, сколько заняла каждая часть функции, логировать это красиво и потом использовать в отладке. Вот тебе мини-класс Timer, который поможет замерять всё по шагам.
➡️ Весь код:
import time
class Timer:
def __init__(self): self.start = time.time()
def log(self, label):
now = time.time()
print(f"[{label}] {now - self.start:.3f}s")
self.start = now
# Пример использования
t = Timer()
# ... код ...
t.log("Шаг 1")
# ... ещё код ...
t.log("Шаг 2")
🔥 Чем полезно:
- Класс легко вставить в любой скрипт
- Удобно логировать задержки по шагам (загрузка, парсинг, отправка)
- Работает без зависимостей
- Можно заменить print на logging.info() и сразу интегрировать в бэкенд
✳️ Применяется в: ETL-задачах, парсерах, API-хендлерах, тестировании производительности, dev-сценариях. Совет: если хочешь, чтобы логи шли в файл — просто подмени print() на logger из logging.
tags: #полезно #python #разработка
🧭 @recura_tech



