我从 JSON 对象获取以下格式的日期时间字符串,我想将其转换为 Python 中的日期时间对象,以便我可以在我的代码中使用它。
'2019-06-01T23:07:02.000+0000'
如您所见,上面的字符串包含毫秒,我在 strptime 方法中找不到格式化程序。
datetime.strptime(incOpenTime, '%Y-%m-%dT%H:%M:%S.%fZ') #this works only against microseconds
我可以解析字符串并将其提供给 datetime 对象,但我希望采用直接的 strptime 格式。
您可能
希望将格式化程序字符串更改为'%Y-%m-%dT%H:%M:%S.%f%z
In [25]: datetime.strptime('2019-06-01T23:07:02.000+0000','%Y-%m-%dT%H:%M:%S.%f%z')
Out[25]: datetime.datetime(2019, 6, 1, 23, 7, 2, tzinfo=datetime.timezone.utc)
或者你可以使用datetutil.parser来做同样的事情,这不需要你提供格式字符串。
'2019-06-01T23:07:02.000+0000'
ModuleNotFoundError Traceback (most recent call last)
<ipython-input-1-d8d1b2eea17c> in <module>
----> 1 from datetutil import parser
ModuleNotFoundError: No module named 'datetutil'
In [2]: from dateutil import parser
In [4]: parser.parse('2019-06-01T23:07:02.000+0000')
Out[4]: datetime.datetime(2019, 6, 1, 23, 7, 2, tzinfo=tzutc())