datetime – Python speed testing – Time Difference – milliseconds

datetime – Python speed testing – Time Difference – milliseconds

datetime.timedelta is just the difference between two datetimes … so its like a period of time, in days / seconds / microseconds

>>> import datetime
>>> a = datetime.datetime.now()
>>> b = datetime.datetime.now()
>>> c = b - a

>>> c
datetime.timedelta(0, 4, 316543)
>>> c.days
0
>>> c.seconds
4
>>> c.microseconds
316543

Be aware that c.microseconds only returns the microseconds portion of the timedelta! For timing purposes always use c.total_seconds().

You can do all sorts of maths with datetime.timedelta, eg:

>>> c / 10
datetime.timedelta(0, 0, 431654)

It might be more useful to look at CPU time instead of wallclock time though … thats operating system dependant though … under Unix-like systems, check out the time command.

Since Python 2.7 theres the timedelta.total_seconds() method. So, to get the elapsed milliseconds:

>>> import datetime
>>> a = datetime.datetime.now()
>>> b = datetime.datetime.now()
>>> delta = b - a
>>> print delta
0:00:05.077263
>>> int(delta.total_seconds() * 1000) # milliseconds
5077

datetime – Python speed testing – Time Difference – milliseconds

You might want to use the timeit module instead.

Leave a Reply

Your email address will not be published.