Ant wrote: > John Machin wrote: > > Lad wrote: > > > Hello, > > > what is the best /easest way how to get number of hours and minutes > > > from a timedelta object? > ... > > >>> diff.days > > 0 > > >>> diff.seconds > > 52662 > > >>> diff.microseconds > > 922000 > > >>> minutes = (diff.seconds + diff.microseconds / 1000000.0) / 60.0 > > >>> minutes > > 877.71536666666668 > > I suspect what Lad wanted was something more like:
1. If that's what he wanted, it was a very peculiar way of asking. Do you suspect that he needs to be shown how to conver 877.7... minutes into hours, minutes and seconds??? 2. Please consider that the order of the result would be more conventionally presented as (hours, minutes, seconds) -- or do you suspect that the OP needs it presented bassackwards? > > >>> def secs_mins_hours(timed): > ... total_secs = timed.seconds > ... secs = total_secs % 60 > ... total_mins = total_secs / 60 > ... mins = total_mins % 60 > ... hours = total_mins / 60 > ... return (secs, mins, hours) > >>> aa=datetime.datetime(2006, 7, 29, 16, 13, 56, 609000) > >>> bb=datetime.datetime(2006, 8, 3, 17, 59, 36, 46000) > >>> td = aa - bb > >>> secs_mins_hours(td) > (39, 45, 1) > > I'm surprised that the timedelta class hasn't got secs, mins and hours > properties - they could be generated on the fly in a similar way. -- http://mail.python.org/mailman/listinfo/python-list