2024-09-13 16:58:34 +08:00

32 lines
1.2 KiB
Python

import time
class Timer:
MILLI_SECONDS = "milliseconds"
SECONDS = "seconds"
MINUTES = "minutes"
HOURS = "hours"
def __init__(self, name=None):
self.start_time = None
self.end_time = None
self.name = name
def start(self):
self.start_time = time.time()
def stop(self):
self.end_time = time.time()
def elapsed_time(self):
return int(self.end_time - self.start_time)
def get_elasped_time_str(self, format):
if format == Timer.SECONDS:
return f"Elapsed time in <{self.name}>: {self.elapsed_time()} seconds"
elif format == Timer.MINUTES:
return f"Elapsed time in <{self.name}>: {self.elapsed_time() // 60} minutes, {self.elapsed_time() % 60} seconds"
elif format == Timer.HOURS:
return f"Elapsed time in <{self.name}>: {self.elapsed_time() // 3600} hours, {(self.elapsed_time() % 3600)//60} minutes, {self.elapsed_time() % 60} seconds"
elif format == Timer.MILLI_SECONDS:
return f"Elapsed time in <{self.name}>: {(self.end_time - self.start_time) * 1000} milliseconds"
else:
return f"Invalid format: {format}"