PHP具有惊人的strtotime()功能,几乎可以将任何内容转化为时间。
我在Python中寻找类似的东西?
作为原因的一个例子:我正在解析具有最愚蠢格式的系统日志(又名rfc3164),它省略了一年并且包括一个空间填充的日期。
目前在Python中我正在这样做:
import datetime
d='Mar 5 09:10:11' # as an example
# first remove the space, if it exists
if d[4] == ' ':
d = d[0:4] + d[5:]
# append this year (I know, it could be last year around Dec/Jan!)
d = str(datetime.datetime.now().year) + ' ' + d
# now we can feed it strptime
date = datetime.strptime(d, "%Y %b %d %H:%M:%S")
这真的很难看。
有更好的方法吗?
答案 0 :(得分:1)
我认为您正在寻找dateutils
模块:
In [12]: d = 'Mar 5 09:10:11'
In [13]: import dateutil
In [14]: dateutil.parser.parse(d)
Out[14]: datetime.datetime(2015, 3, 5, 9, 10, 11)