How to get hours and minutes from 'datetime.timedelta' object?

L

Lad

Hello,
what is the best /easest way how to get number of hours and minutes
from a timedelta object?
Let's say we have
aa=datetime.datetime(2006, 7, 29, 16, 13, 56, 609000)
bb=datetime.datetime(2006, 8, 3, 17, 59, 36, 46000)
so
c=bb-aa
will be
datetime.timedelta(5, 6339, 437000)

I can easily get days ( c.days)
but
I still can not figure out how easily to get hours and minutes
Any idea?
Thank you for help
L.
 
J

John Machin

Lad said:
Hello,
what is the best /easest way how to get number of hours and minutes
from a timedelta object?
Let's say we have
aa=datetime.datetime(2006, 7, 29, 16, 13, 56, 609000)
bb=datetime.datetime(2006, 8, 3, 17, 59, 36, 46000)
so
c=bb-aa
will be
datetime.timedelta(5, 6339, 437000)

I can easily get days ( c.days)
but
I still can not figure out how easily to get hours and minutes
Any idea?


WTF^H^H^H ... You got an answer to this question 5 days ago .....
[thread copied below]
8<-------------------------------
Ok, I tried
datetime.timedelta(-999999999)

Reread the manual:

1. "min" is minIMUM, not minUTES

2. You need:
877.71536666666668

8<----------------------------
 
A

Ant

John said:
877.71536666666668

I suspect what Lad wanted was something more like:
.... 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)(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.
 
J

John Machin

Ant said:
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?
 
A

Ant

John Machin wrote:
....
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???

Chill dude, It wasn't an attack :)

The datetime class has hour, minute and second attributes that give the
values of each as being in range(24) (hours) and range(60). i.e.
integers. So an educated guess leads me to the conclusion that it is
similar functionality that he wants from the timedelta class.
2. Please consider that the order of the result would be more
conventionally presented as (hours, minutes, seconds) -- or do you

Very good point. That would have been a tricky issue for the OP, and
for that I apologise.
suspect that the OP needs it presented bassackwards?

I think that you have that last word muddled. Not quite ass-backward,
but close ;-)
 
J

John Machin

Ant said:
John Machin wrote:
...

Chill dude, It wasn't an attack :)

I didn't think it was.
The datetime class has hour, minute and second attributes that give the
values of each as being in range(24) (hours) and range(60). i.e.
integers. So an educated guess leads me to the conclusion that it is
similar functionality that he wants from the timedelta class.


Very good point. That would have been a tricky issue for the OP, and
for that I apologise.


I think that you have that last word muddled. Not quite ass-backward,
but close ;-)

On the contrary. It means "ass-backward, and then some". Google
"dictionary bassackwards" and read the first few hits.

Cheers,
John
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,768
Messages
2,569,574
Members
45,051
Latest member
CarleyMcCr

Latest Threads

Top