Skip to content

Instantly share code, notes, and snippets.

@lihdaf
Forked from igniteflow/stopwatch.py
Created November 19, 2017 05:41
Show Gist options
  • Save lihdaf/8ac97fb81f52ef4a78356c5f0427444a to your computer and use it in GitHub Desktop.
Save lihdaf/8ac97fb81f52ef4a78356c5f0427444a to your computer and use it in GitHub Desktop.
A simple stopwatch implemented in Python
import datetime
class Timer(object):
"""A simple timer class"""
def __init__(self):
pass
def start(self):
"""Starts the timer"""
self.start = datetime.datetime.now()
return self.start
def stop(self, message="Total: "):
"""Stops the timer. Returns the time elapsed"""
self.stop = datetime.datetime.now()
return message + str(self.stop - self.start)
def now(self, message="Now: "):
"""Returns the current time with a message"""
return message + ": " + str(datetime.datetime.now())
def elapsed(self, message="Elapsed: "):
"""Time elapsed since start was called"""
return message + str(datetime.datetime.now() - self.start)
def split(self, message="Split started at: "):
"""Start a split timer"""
self.split_start = datetime.datetime.now()
return message + str(self.split_start)
def unsplit(self, message="Unsplit: "):
"""Stops a split. Returns the time elapsed since split was called"""
return message + str(datetime.datetime.now() - self.split_start)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment