timer.py 440 B

12345678910111213141516171819
  1. import time
  2. from typing import Any
  3. class Timer:
  4. def __init__(self) -> None:
  5. self.start_time: float = time.time()
  6. self.start: float = time.perf_counter()
  7. self.stop: float = self.start
  8. def __enter__(self) -> "Timer":
  9. return self
  10. def __exit__(self, *args: Any) -> None:
  11. self.stop = time.perf_counter()
  12. @property
  13. def elapsed(self) -> float:
  14. return self.stop - self.start