我正在尝试生成一个带范围的日期,但是时间未显示。代码如下:
def date_range(start, end, step: datetime.timedelta):
while start < end:
yield start
start += step
for d in date_range(
start=datetime.date(2019, 1, 1),
end=datetime.date(2019, 1, 15),
step=datetime.timedelta(days=7),
):
print(d)
>>>2019-01-01
>>>2019-01-08
该代码仅显示日期,而没有时间。为什么?
答案 0 :(得分:1)
您正在使用datetime.date()
,根据Python文档here,其中不包含时间信息-只是将小时/分钟/秒设置为0。
我认为您想使用包含时间信息的datetime.datetime()
。
有关更多信息,请参见datetime.datetime()
上的Python documentation。