【发布时间】:2020-05-28 21:40:33
【问题描述】:
我可以将 ISO 日期格式转换为简单的日期格式,如下所示。
from dateutil.parser import parse
date_string = '2018-03-12T10:12:45Z'
dt = parse(date_string)
print(dt.date()) #prints 2018-03-12
print(dt.time()) #prints 10:12:45
print(dt.tzinfo) #prints tzutc()
如何以其他方式转换它?示例如下所示
If input is `2018-03-12` , then output should be `2018-03-12T00:00:00Z`
If input is `2018-03-12-10-12-45` , then output should be `2018-03-12T10:12:45Z`
我正在接受两个输入 (format : yyyy-mm-dd) 并尝试在 iso-format 中形成从开始日期到结束日期之间的日期范围。我该怎么做(如下)?
input1 : `2018-03-12` , output1 : `2018-03-12T00:00:000Z` (12AM, 24-hr format)
input2 : `2018-03-15` , output2 : `2018-03-15T23:59:000Z` (11:59PM, 24-hr format)
解决方案:
import dateutil.parser
from datetime import datetime
import time
input1="2018-03-12"
input2="2018-03-15"+" 01:02:03.004"
output1=dateutil.parser.parse(input1)
output2=dateutil.parser.parse(input2)
output1 = "%s:%06.3f%s" % (output1.strftime('%Y-%m-%dT%H:%M'),float("%06.3f" % (output1.second+output1.microsecond / 1e6)),output1.strftime('Z'))
output2 = "%s:%06.3f%s" % (output2.strftime('%Y-%m-%dT%H:%M'),float("%06.3f" % (output2.second+output2.microsecond / 1e6)),output2.strftime('Z'))
print(output1)
print(output2)
输出:
2018-03-12T00:00:00.000Z
2018-03-15T01:02:03.004Z
【问题讨论】:
标签: python-3.x python-dateutil