Search code examples
pythondatedatetimetimepython-dateutil

how to convert and subtract dates, times in python


I have the following date/time:

2011-09-27 13:42:16

I need to convert it to:

9/27/2011 13:42:16

I also need to be able to subtract one date from another and get the result in HH:MM:SS format. I have tried to use the dateutil.parser.parse function, and it parses the date fine but sadly it doesn't seem to get the time correctly. I also tried to use another method I found on stackoverflow that uses "time", but I get an error that time is not defined.


Solution

  • You can use datetime's strptime function:

    from datetime import datetime
    
    date = '2011-09-27 13:42:16'
    result = datetime.strptime(date, '%Y-%m-%d %H:%M:%S')
    

    You were lucky, as I had that above line written for a project of mine.

    To print it back out, try strftime:

    print result.strftime('%m/%d/%Y %H:%M:%S')