Skip to content

Instantly share code, notes, and snippets.

@kaanberke
Last active February 18, 2020 11:53
Show Gist options
  • Select an option

  • Save kaanberke/47e27bbbd787ee0729305ae9e95e6d3b to your computer and use it in GitHub Desktop.

Select an option

Save kaanberke/47e27bbbd787ee0729305ae9e95e6d3b to your computer and use it in GitHub Desktop.
Timer
from time import time
class Timer(object):
def __init__(self, logger=None):
self.start = None
self.end = None
self.logger = logger
def __enter__(self):
self.start = time()
def __exit__(self, exc_type, exc_val, exc_tb):
self.end = time()
self.log()
def log(self):
assert self.start is not None and self.end is not None
message = f'Total time: {self.end - self.start}s'
if self.logger is None:
print(message)
else:
self.logger.info(message)
@kaanberke
Copy link
Author

kaanberke commented Feb 18, 2020

import logging

logger = logging.getLogger('bisim')
with Timer(logger):
    for i in range(1_000_000):
        pass

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment