NateM wrote: > How do I convert any given date into a milliseconds value that > represents the number of milliseconds that have passed since January 1, > 1970 00:00:00.000 GMT? > Is there an easy way to do this like Date in java? > Thanks, > Nate
The main module for dates and times is "datetime"; so >>> import datetime >>> t=datetime.datetime.now() >>> print t 2006-01-24 15:13:35.012755 To get at the "epoch" value, i.e. seconds since 1/1/1970, use the "time" module: >>> import time >>> print time.mktime(t.timetuple()) 1138133615.0 Now just add in the microseconds: >>> epoch=time.mktime(d.timetuple())+(t.microsecond/1000000.) >>> print epoch 1138133615.01 Use the "%" formatting operator to display more resolution: >>> print '%f' % t 1138133615.012755 Note that the floating point division above is not exact and could possibly mangle the last digits. Another way to this data is the datetime.strftime member: >>> print d.strftime('%s.%%06d') % d.microsecond '1138133615.012755' This gets you a string, not a number object. Converting the string to a number again risks inaccuracy in the last digits: >>> print float( '1138133615.012755') 1138133615.0127549 -- http://mail.python.org/mailman/listinfo/python-list