如何找到日期格式?

2024-04-19 02:04:34 发布

您现在位置:Python中文网/ 问答频道 /正文

我收到一个json,它打印时间数据'2016-04-15T02:19:17+00:00',我好像搞不懂这个unicode字符串的格式。你知道吗

我需要找出当时和现在的时间差别。第一步是将字符串转换为结构化格式,而我找不到格式

fmt='"%Y-%m-%d %H:%M:%S %Z' 
#fmt='%Y-%m-%d %H:%M:%S.%f' 
print datetime.datetime.strptime(result_json['alert_time'], fmt)

我不断得到例外,它是不同的格式

time data '2016-04-15T02:19:17+00:00' does not match format '"%Y-%m-%d %H:%M:%S %Z'

Tags: 数据字符串jsondatadatetimetime格式时间
2条回答

布伦特的答案是更安全和更快的选择,而不是让事情在幕后进行。但是有多少次我把datetime作为一个令人沮丧的瓶颈,与我想测试的主要问题无关,我还将指出dateparserhere对我来说还没有错,将需要大量的输入。你知道吗

import dateparser
import datetime

date = '2016-04-15T02:19:17+00:00'

date_parser_format = dateparser.parse(date)
datetime_format = datetime.datetime.strptime('2016-04-15T02:19:17', '%Y-%m-%dT%H:%M:%S')

print date_parser_format
print datetime_format

你的格式有一些问题。首先,它有一个双引号"。其次,需要在日期和时间之间包含T。第三,时区偏移不标准。以下代码将起作用:

print datetime.datetime.strptime('2016-04-15T02:19:17', '%Y-%m-%dT%H:%M:%S')

如果您的alert_time总是以GMT为单位,您只需在调用strptime之前关闭时区即可。你知道吗

相关问题 更多 >