python_utils/utils/timer_utils.py
M. A. Reza e623a03995 update
2025-12-14 10:40:52 +03:30

36 lines
865 B
Python

from datetime import datetime
from rich.console import Console
console = Console()
timers_started_ats = dict()
def start_timer(name=1, do_print=True):
started_at = datetime.now()
timers_started_ats[name] = started_at
if do_print:
console.print(f"{name:<{len(str(name)) + 4}} ", end="")
print(f"started at: {started_at.strftime('%H:%M:%S.%f')}")
return name, started_at
def stop_timer(name=1, do_print=True):
ended_at = datetime.now()
took = ended_at - timers_started_ats[name]
if do_print:
console.print(f"{name:<{len(str(name)) + 4}} ", end="")
print(f"{'ended at:':>11} {ended_at.strftime('%H:%M:%S.%f')} ", end="")
console.print(f"took: {took}")
return name, ended_at, took
if __name__ == "__main__":
from time import sleep
start_timer()
sleep(1)
stop_timer()