Как преобразовать строку datetime обратно в объект datetime? - PullRequest
9 голосов
/ 13 ноября 2010

Я храню строку datetime в базе данных. Теперь я столкнулся с проблемой. Когда я получаю строку из базы данных, мне нужно преобразовать ее обратно в datetime объект ...

Есть ли простой способ сделать это?

Строка даты и времени выглядит так:

2010-11-13 10:33:54.227806

Ответы [ 3 ]

21 голосов
/ 13 ноября 2010

Вы хотите datetime.strptime (date_string, format).

from datetime import datetime
datetime.strptime("2010-11-13 10:33:54.227806", "%Y-%m-%d %H:%M:%S.%f")

Подробнее о строке формата см. http://docs.python.org/library/datetime.html#strftime-and-strptime-behavior

5 голосов
/ 13 ноября 2010

Я полагаю, вы устанавливаете python-dateutilt :

from dateutil import parser
d = parser.parse(yourstring)

Эта библиотека получает объект datetime из вашей строки даты «умным» способом ...

1 голос
/ 04 мая 2012
# time tuple to datetime object
    time_tuple = (2008, 11, 12, 13, 51, 18, 2, 317, 0)
    dt_obj = datetime(*time_tuple[0:6])
    print repr(dt_obj)

# date string to datetime object
    date_str = "2008-11-10 17:53:59"
    dt_obj = datetime.strptime(date_str, "%Y-%m-%d %H:%M:%S")
    print repr(dt_obj)

# timestamp to datetime object in local time
    timestamp = 1226527167.595983
    dt_obj = datetime.fromtimestamp(timestamp)
    print repr(dt_obj)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...