我得到了一个日期时间字符串,格式类似于"2009-05-28T16:15:00"(我相信这是ISO8601).一个黑客选项似乎是使用time.strptime
解析字符串,并将元组的前六个元素传递到datetime构造函数中,如:
datetime.datetime(*time.strptime("2007-03-04T21:08:12", "%Y-%m-%dT%H:%M:%S")[:6])
我还没有找到一个"更干净"的方法来做这件事.有吗?
我得到了一个日期时间字符串,格式类似于"2009-05-28T16:15:00"(我相信这是ISO8601).一个黑客选项似乎是使用time.strptime
解析字符串,并将元组的前六个元素传递到datetime构造函数中,如:
datetime.datetime(*time.strptime("2007-03-04T21:08:12", "%Y-%m-%dT%H:%M:%S")[:6])
我还没有找到一个"更干净"的方法来做这件事.有吗?
我更喜欢使用dateutil库进行时区处理和通常可靠的日期解析.如果你得到一个ISO 8601
字符串,比如:2010-05-08T23:41:54.000Z
,你会很高兴用strtime解析它,尤其是如果你事先不知道是否包含时区的话.pyiso8601
有几个问题(判断他们的追踪器)是我在使用过程中遇到的,而且已经好几年没有更新了.相比之下,dateutil一直很活跃,为我工作:
from dateutil import parser
yourdate = parser.parse(datestring)