Skip to content

Instantly share code, notes, and snippets.

@thomasmooon
Forked from igniteflow/stopwatch.py
Created July 10, 2018 12:39
Show Gist options
  • Save thomasmooon/abaf5e18ff86d965f757dff515d3bed0 to your computer and use it in GitHub Desktop.
Save thomasmooon/abaf5e18ff86d965f757dff515d3bed0 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