蟒蛇.将字符串转换为datetime会引发ValueError

Baz*_*aka 2 python datetime python-3.x

我有字符串:

import datetime
time = "2016-02-01 19:14:54+02:00"
Run Code Online (Sandbox Code Playgroud)

并尝试将其转换为datetime obj:

result = datetime.datetime.strptime(time, "%Y-%m-%d %H:%M:%S%z")
Run Code Online (Sandbox Code Playgroud)

它抛出异常:

ValueError: time data '2016-02-01 19:14:54+02:00' does not match format '%Y-%m-%d %H:%M:%S%z'
Run Code Online (Sandbox Code Playgroud)

你能帮我解决一下这里有什么问题吗?

Håk*_*Lid 5

根据python 规范,时区偏移量%z不应该:在小时和分钟之间.strptime

>>>> datetime.datetime.strptime("2016-02-01 19:14:54+02:00", "%Y-%m-%d %H:%M:%S%z")
ValueError: time data '2016-02-01 19:14:54+02:00' does not match format '%Y-%m-%d %H:%M:%S%z'

>>> datetime.datetime.strptime("2016-02-01 19:14:54+0200", "%Y-%m-%d %H:%M:%S%z")
datetime.datetime(2016, 2, 1, 19, 14, 54, tzinfo=datetime.timezone(datetime.timedelta(0, 7200)))
Run Code Online (Sandbox Code Playgroud)