는 dateutil 패키지는 올바르게 자동으로 처음 3 형식을 처리, 길을 가야하는 것입니다 :
>>> from dateutil.parser import parse
>>> parse("Fri Sep 25 18:09:49 -0500 2009")
datetime.datetime(2009, 9, 25, 18, 9, 49, tzinfo=tzoffset(None, -18000))
>>> parse("2008-06-29T00:42:18.000Z")
datetime.datetime(2008, 6, 29, 0, 42, 18, tzinfo=tzutc())
>>> parse("2011-07-16T21:46:39Z")
datetime.datetime(2011, 7, 16, 21, 46, 39, tzinfo=tzutc())
이 위로 촌스러운듯한 unixtime 형식,하지만 다행히 표준 datetime.datetime
>>> from datetime import datetime
>>> datetime.utcfromtimestamp(float("1294989360"))
datetime.datetime(2011, 1, 14, 7, 16)
4 형식을 처리하는이 밖으로 기능을 오히려 간단하다 :
from dateutil.parser import parse
from datetime import datetime
def parse_time(s):
try:
ret = parse(s)
except ValueError:
ret = datetime.utcfromtimestamp(s)
return ret
01 작업을 위해입니다
실제로 이것은 내가 한 일입니다. @TimPietzcker가 제안했을 때 ... .. 주석에서 볼 수 있습니다 .. !! ..하지만 멋진 답장 (및 코드 설명)에 대해 고맙습니다. !! –
dateutil을 설치하려면 :'pip install python-dateutil'. 마치'pip'를 통해 설치하는 방법을 제공하지 않을 때 합법적 인 패키지가 아니라고 생각하기를 바랍니다. – ArtOfWarfare