Skip to content

illagrenan/block-timer

Repository files navigation

Block Timer: Measure execution time of your code blocks

PyPi MIT TravisCI Coverage Updates Supported Python implementations Supported Python versions

Installation

  • Supported Python versions are: 3.4, 3.5, 3.6 and 3.7.
pip install --upgrade block-timer

Usage

You can easily measure blocks of code using Timer class as context manager or as method/function decorator with Block Timer:

Elapsed time will be printed using standard print function:

from block_timer.timer import Timer

with Timer():
    pass # Some operation

# Total time ... seconds will be printed

If you have multiple blocks of code, you can set title attribute:

from block_timer.timer import Timer

with Timer(title="Block A"):
    pass # Some operation

# [Block A] Total time ... seconds will be printed

with Timer(title="Block B"):
    pass # Some operation

# [Block B] Total time ... seconds will be printed

Elapsed time (in fractional seconds) can be accessed by elapsed property. You can also disable printing by print_title=False:

from block_timer.timer import Timer

with Timer(print_title=False) as t:
    pass # Some operation

print("Elapsed time: {:f} seconds".format(t.elapsed))

You can redirect output for print function:

import sys

from block_timer.timer import Timer

with Timer(print_file=sys.stdout):
    pass # Some operation

Timer class can be used as a method/function decorator:

@Timer(title="Foo")
def some_func():
    time.sleep(1)

some_func()
# [Foo] Total time ... seconds will be printed

Resources

License

The MIT License (MIT)