On Fri, 2010-07-30 at 14:28 +0200, Hrvoje Niksic wrote: > Steven D'Aprano <st...@remove-this-cybersource.com.au> writes: > > > On Thu, 29 Jul 2010 14:42:58 +0200, Matteo Landi wrote: > > > >> This should be enough > >> > >>>>>import time > >>>>>tic = time.time() > >>>>>function() > >>>>>toc = time.time() > >>>>>print toc - tic > > > > You're typing that in the interactive interpreter, which means the > > timer is counting the seconds while you're typing subsequent > > commands. At the very least, you need to put that code into a > > function. > > Or, trivially improved as follows: > > >>> t0 = time.time(); function(); t1 = time.time() > >>> print t1 - t0
I'll just throw this out. I sometimes use a decorator to keep track of a functions execution times: def timed_function(f): """Function decorator that records the execution time of a function""" import time def funct(*args, **kwargs): __starttime = time.time() result = f(*args, **kwargs) __endtime = time.time() funct.runtime = __endtime - __starttime return result return funct Then >>> from goodies import timed_function >>> from time import sleep >>> @timed_function ... def test(n): ... sleep(n) ... >>> test(4) >>> test.runtime 4.003864049911499 Works for simple stuff anyway. -a -- http://mail.python.org/mailman/listinfo/python-list