On Sat, 08 Apr 2006 04:16:20 -0700, jUrner wrote: > def calc_time_res(): > now = time.time > start = now() > x = start > while start == x: > x = now() > print x, start # <-- > print x - start > > print calc_time_res() >>> 1.50203704834e-05 > > Something is going wrong here. > If you look at the function ,time.time() returns time in microseconds > (most oses and so does mine).
>From help(time.time): time() -> floating point number Return the current time in seconds since the Epoch. Fractions of a second may be present if the system clock provides them. Seconds, not microseconds. > So the calculation goes, lets say 1.23 - 1.24 How can the time *after* the while loop be less than the time *before* the while loop? > How can the result be something like 1.50203704834e-05 ? Have you looked at the output of time.time()? >>> time.time() 1144496209.3221531 Of course, Python only prints a certain number of digits; to see the full amount, use string formatting: >>> '%40.30f' % time.time() '1144496642.905987024307250976562500000000' This brings me to an even simpler method of getting the resolution of time.time(), without the overhead of a while loop: >>> abs(time.time() - time.time()) 1.0013580322265625e-05 which is approximately 0.01ms, just as you expected. -- Steven. -- http://mail.python.org/mailman/listinfo/python-list