我在数据库中存储datetime
字符串。现在我遇到了一个问题。当我从数据库中获取字符串时,我需要将其转换回datetime
对象...
任何简单的方法吗?
日期时间字符串如下所示:
2010-11-13 10:33:54.227806
答案 0 :(得分:20)
您需要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
答案 1 :(得分:5)
我建议您安装python-dateutilt:
from dateutil import parser
d = parser.parse(yourstring)
此库以“智能”方式从日期字符串中获取日期时间对象...
答案 2 :(得分:1)
# 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)