-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathTimer.py
More file actions
31 lines (24 loc) · 834 Bytes
/
Timer.py
File metadata and controls
31 lines (24 loc) · 834 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
import time
class Timer:
def __init__(self):
self.start_time = time.time()
self.elapsed_time = 0
self.running = True
def update(self):
if self.running:
self.elapsed_time = time.time() - self.start_time
def pause(self):
if self.running:
self.elapsed_time = time.time() - self.start_time
self.running = False
def resume(self):
if not self.running:
self.start_time = time.time() - self.elapsed_time
self.running = True
def reset(self):
self.start_time = time.time()
self.elapsed_time = 0
self.running = True
def get_time_string(self):
minutes, seconds = divmod(int(self.elapsed_time), 60)
return f"{minutes:02d}:{seconds:02d}"