如何将此字符串转换为 Python 中的日期对象?

How to convert this string as date object in Python?

(Python 3.5)

我有这个字符串:

2021-05-05T13:13:56+00:00

我想将其转换为日期对象以对其执行后续操作。

我试过以下方法:

d= "2021-05-05T13:13:56+00:00"
dt = datetime.strptime(d, '%Y-%m-%dT%H:%M:%S')

如期而至:

ValueError: unconverted data remains: +00:00

我不知道这些元素到底是什么,参考 this,我找不到它可以指的是什么。

如何将此字符串转换为日期对象?

额外的值是%Z或UTC偏移量,正如MrFruppes指出的那样,在Python 3.7之后使用冒号。您可以将它添加到您的 strptime 调用中,或使用 fromisoformat(效率更高)。

from datetime import datetime

d = "2021-05-05T13:13:56+00:00"

dt = datetime.strptime(d, '%Y-%m-%dT%H:%M:%S%z')
dt_fromiso = datetime.fromisoformat(d)

print(dt)
print(dt_fromiso)