ANN lauda 1.1.0
Andrea Stagi
stagi.andrea at gmail.com
Wed Sep 16 12:19:53 CEST 2015
I've created lauda, a little python module to measure time. Thanks a lot to
Jesús Espino (@jespinog) for the new context manager feature
You can install it with
pip install lauda
you can find the source code on Github: https://github.com/astagi/lauda
You can use lauda StopWatch to measure a portion of code
from lauda import StopWatch
watch = StopWatch()
watch.start()
for i in range(10000000):
pass
watch.stop()
print ('Time spent in range {0}'.format(watch.elapsed_time))
If you want to measure an entire function execution, you can decorate it
using the stopwatch decorator
from lauda import stopwatch
@stopwatch
def awesome_mul(a, b):
return a * b
By default stopwatch decorator will print the time spent inside the
decorated function, if you want more control you can pass to your decorator
a callback that will receive a StopWatch instance and the decorated
function.
from lauda import stopwatch
def stopwatch_sum_cb(watch, function):
print ('Time spent {0}'.format(watch.elapsed_time))
@stopwatch(callback=stopwatch_sum_cb)
def awesome_sum(a, b):
return a + b
If you want to measure a block of code, you can use the `stopwatchcm`
context manager
from lauda import stopwatchcm
with stopwatchcm():
c = a * b
By default `stopwatchcm` context manager will print the time spent inside
the context manager body, if you want more control you can pass to your
context manager a callback that will receive a `StopWatch` instance.
from lauda import stopwatchcm
def stopwatch_sum_cb(watch):
print ('Time spent {0}'.format(watch.elapsed_time))
with stopwatchcm(callback=stopwatch_sum_cb):
c = a + b
--
Andrea Stagi (@4stagi) - Develover @Nephila
Job profile: http://linkedin.com/in/andreastagi
Website: http://4spills.blogspot.it/
Github: http://github.com/astagi
More information about the Python-announce-list
mailing list