如何将日期时间字符串转换回日期时间对象?
我在数据库里存储了一个datetime
字符串。现在我遇到了一个问题。当我从数据库里取出这个字符串时,我需要把它转换回datetime
对象……
有没有简单的方法可以做到这一点呢?
这个datetime字符串看起来是这样的:
2010-11-13 10:33:54.227806
3 个回答
3
在编程中,有时候我们会遇到一些问题,可能是因为代码写得不够清晰,或者是我们对某些概念理解得不够透彻。这种情况下,向社区求助,比如在StackOverflow上提问,是一个很好的选择。大家会根据自己的经验来帮助你,给出建议和解决方案。
在提问时,记得尽量详细地描述你的问题,包括你遇到的错误信息、你尝试过的解决方法,以及相关的代码片段。这样,别人才能更好地理解你的问题,给出更有效的帮助。
同时,也要保持礼貌和耐心,因为每个人的时间都很宝贵,大家都是在自愿帮助你。希望你能在这个过程中学到更多的知识,提升自己的编程能力。
# 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)
7
我建议你用 pip install python-dateutil
来安装 python-dateutil 这个库:
from dateutil import parser
d = parser.parse(yourstring)
这个库可以“聪明地”从你的日期字符串中获取一个 datetime
对象...
29
你想要使用 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")
关于格式字符串的详细信息,可以查看 这个链接