如何在python中列出日期和时间

我有这段代码从作为输入参数的两个变量生成一个列表,该函数返回一个日期和时间列表,其中包含输入参数之间的所有日期和时间


FechaIn = "2019-01-01 00:00"

FechaFin = "2019-01-16 23:59"

meses = []

start = datetime.datetime.strptime(FechaIn, "%Y-%m-%d %H:%M")

end = datetime.datetime.strptime(FechaFin, "%Y-%m-%d %H:%M")

date_array = \

    (start + datetime.timedelta(days=x) for x in range(0, (end-start).days))

for date_object in date_array:

    meses.append(str(date_object.strftime("%Y-%m-%d %H:%M")))

meses.append(FechaFin)

print (meses)

代码返回:


['2019-01-01 00:00', '2019-01-02 00:00', '2019-01-03 00:00', '2019-01-04 00:00', '2019-01-05 00:00', '2019-01-06 00:00', '2019-01-07 00:00', '2019-01-08 00:00', '2019-01-09 00:00', '2019-01-10 00:00', '2019-01-11 00:00', '2019-01-12 00:00', '2019-01-13 00:00', '2019-01-14 00:00', '2019-01-15 00:00', '2019-01-16 23:59']

但我需要在所有时间生成,就像这样:


['2019-01-01 00:00', '2019-01-01 00:01', '2019-01-01 00:02', '2019-01-01 00:03', ...]


幕布斯6054654
浏览 180回答 1
1回答

ITMISS

您可以保留另一个 datetime 对象作为跟踪器,一次添加一分钟,将其附加到 meses 列表中。当跟踪器日期时间等于结束时间时停止,如果您希望列表包含开始和结束日期,请确保附加结束时间。FechaIn = "2019-01-01 00:00"FechaFin = "2019-01-16 23:59"meses = []start = now = datetime.datetime.strptime(FechaIn, "%Y-%m-%d %H:%M")end = datetime.datetime.strptime(FechaFin, "%Y-%m-%d %H:%M")while now != end:    meses.append(str(now.strftime("%Y-%m-%d %H:%M")))    now += datetime.timedelta(minutes=1)meses.append(FechaFin)print (meses)输出:['2019-01-01 00:00', '2019-01-01 00:01', '2019-01-01 00:02' ... '2019-01-16 23:57', '2019-01-16 23:58', '2019-01-16 23:59']
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python