Raven wrote: > ... > def main(): > t = time.time() > for i in range(1000): > r = hypergeometric(6,6,30,6) > print time.time() - t > > t = time.time() > for i in range(1000): > r = hypergeometric_gamma(6,6,30,6) > print time.time() - t > > and the result is: > > 0.0386447906494 > 0.192448139191 > > The first approach is faster so I think I will adopt it. >
You should really look into the timeit module -- you'll get nice solid timings slightly easier to tweak. Imagine something like: import timeit ... t0 = timeit.Timer(stmt='f(6, 6, 30, 6)', setup='from __main__ import hypergeometric as f') t1 = timeit.Timer(stmt='f(6, 6, 30, 6)', setup='from __main__ import hypergeometric_gamma as f') repetitions = 1 # Gross under-estimate of needed repetitions while t0.timeit(repetitions) < .25: # .25 = minimum Secs per round repetitions *= 10 print 'Going for %s repetitions' % repetitions print 'hypergeometric:', t0.repeat(3, repetitions) print 'hypergeometric_gamma:', t1.repeat(3, repetitions) --Scott David Daniels [EMAIL PROTECTED] -- http://mail.python.org/mailman/listinfo/python-list