如何使用python将“Apr 15 2014 16:21:16 UTC”之类的日期转换为UTC时间

时间:2014-04-16 16:03:00

标签: python datetime

我有以下格式的日期,用于命名zip文件:

Apr 15 2014 16:21:16 UTC

我想使用Python将其转换为UTC数字。 python是否识别3个字符的月份?

2 个答案:

答案 0 :(得分:2)

使用:

import datetime

datetime.datetime.strptime(yourstring, '%b %d %Y %H:%M:%S UTC')

%b是缩写的月份名称。默认情况下,无论使用何种环境变量,Python都使用C(英语)语言环境。

演示:

>>> import datetime
>>> yourstring = 'Apr 15 2014 16:21:16 UTC'
>>> datetime.datetime.strptime(yourstring, '%b %d %Y %H:%M:%S UTC')
datetime.datetime(2014, 4, 15, 16, 21, 16)

该值是时区中性的,对于UTC时间戳很好,前提是您不要将本地对象混合到混合中(例如坚持datetime.datetime.utcnow()和类似的方法)。

答案 1 :(得分:2)

更简单的方法是使用dateutil

>>> from dateutil import parser
>>> parser.parse("Apr 15 2014 16:21:16 UTC")
datetime.datetime(2014, 4, 15, 16, 21, 16, tzinfo=tzutc())

处理时区,它也支持其他常见的日期时间格式。