我读过很多关于在python中解析ISO8601的问题,但大多数问题都使用外部依赖关系。然后我碰到了这个问题,
它解释了python不支持iso8601格式,但答案是3年前的。
我需要解析这个日期而不使用任何外部依赖项,
from datetime import datetime
app_login = "1996-12-19T16:39:57+08:00"
parse_app_login = datetime.strptime(x,"%Y-%m-%dT%H:%M:%S%z")
print(parse_app_login)我得到了错误:
ValueError: time data '1996-12-19T16:39:57+08:00' does not match format '%Y-%m-%dT%H:%M:%S%z'我想知道为什么python不支持iso8601格式?
发布于 2018-10-18 23:44:07
请注意,Python 3.7支持ISO8601 UTC抵消格式,
在版本3.7:中更改,当向strptime()方法提供%z指令时,UTC偏移可以在小时、分钟和秒之间使用冒号作为分隔符。例如,“+01:00:00”将被解析为一个小时的偏移量。此外,提供“Z”与“+00:00”相同。
使用Python 3.7.0 (v3.7.0:1bf9cc5093,2018年6月27日,04:06:47),
>>> from datetime import datetime
>>> x = "2018-10-18T16:39:57+08:00"
>>> y = datetime.strptime(x,"%Y-%m-%dT%H:%M:%S%z")
>>> print(y)输出,
2018-10-18 16:39:57+08:00https://stackoverflow.com/questions/52883987
复制相似问题