将UTC时间转换为python datetime


问题内容

我有以下格式的许多UTC时间戳: 2012-04-30T23:08:56+00:00 我想将它们转换为python datetime对象,但遇到了麻烦。

我的代码:

for time in data:
    pythondata[i]=datetime.strptime(time,"%y-%m-%dT%H:%M:%S+00:00")

我收到以下错误:

ValueError: time data '2012-03-01T00:05:55+00:00' does not match format '%y-%m-%dT%H:%M:%S+00:00'

看起来我的格式正确,那为什么不起作用呢?


问题答案:

将时间格式字符串中的年标记更改为%Y

time = '2012-03-01T00:05:55+00:00'
datetime.strptime(time, "%Y-%m-%dT%H:%M:%S+00:00")
# => datetime.datetime(2012, 3, 1, 0, 5, 55)

strftime()strptime()行为