Reputation: 1854
I have:
test_date = "2017-07-20-10-30"
and then use:
day = datetime.strptime(test_date[11:], "%H-%M")
which gives me
1900-01-01 10:30:00
How do I just get: 10:30:00
as type datetime.time
?
Upvotes: 13
Views: 61091
Reputation: 46839
you can parse your string using datetime.strptime
to a datetime
object and then call .time()
on that to get the time:
from datetime import datetime
strg = "2017-07-20-10-30"
dt = datetime.strptime(strg, '%Y-%m-%d-%H-%M')
tme = dt.time()
print(tme) # 10:30:00
the strftime()
and strptime()
Behavior is well documented.
of course you can also chain these calls:
tme = datetime.strptime(strg, '%Y-%m-%d-%H-%M').time()
Upvotes: 4
Reputation: 5193
You can use the strftime
method of the datetime
object like this:
day.strftime('%H:%M')
More information here: https://docs.python.org/2/library/datetime.html#strftime-strptime-behavior
Ok, I misunderstood. Use day.time()
to get a time
object.
Upvotes: 17