isoparse
作用于
python dateutil
python-dateutil
dateutil.parser.isoparse
不仅要解析RFC3339日期时间字符串(如问题中的一个),还要解析另一个
ISO 8601
不符合RFC 3339的日期和时间字符串(例如没有UTC偏移量的字符串,或仅表示日期的字符串)。
>>> import dateutil.parser
>>> dateutil.parser.isoparse('2008-09-03T20:56:35.450686Z') # RFC 3339 format
datetime.datetime(2008, 9, 3, 20, 56, 35, 450686, tzinfo=tzutc())
>>> dateutil.parser.isoparse('2008-09-03T20:56:35.450686') # ISO 8601 extended format
datetime.datetime(2008, 9, 3, 20, 56, 35, 450686)
>>> dateutil.parser.isoparse('20080903T205635.450686') # ISO 8601 basic format
datetime.datetime(2008, 9, 3, 20, 56, 35, 450686)
>>> dateutil.parser.isoparse('20080903') # ISO 8601 basic format, date only
datetime.datetime(2008, 9, 3, 0, 0)
这个
python dateutil
包也有
dateutil.parser.parse
datutil.parser.isoparse
是完整的ISO-8601格式解析器,但
fromisoformat
故意
不
. 请参阅后一个函数的文档以了解此警告。(见
this answer
).