Список из времени от 03:00 до 00:00 c шагом 5 минут

Как, используя Python, можно сформировать список из значений времени с шагом в 5 минут. На выходе должно получиться следующее:

mylist=[03:00,03:05,03:10 ...]


Ответы (1 шт):

Автор решения: SergFSM

если значения времени нужны в строковом виде, то вот простенький цикл:

h = 3
m = 0
t = h * 60 + m
mylist = []

while t < 1441:
    mylist += [f'{t//60:02d}:{t%60:02d}']
    t += 5

print(mylist)

#
['03:00', '03:05', '03:10', '03:15',..., '23:50', '23:55', '24:00']

а если нужен тип времени, то можно попробовать так:

from datetime import datetime, timedelta, time

t = datetime(2021,8,25,3,0,0)
mylist = [t.time()]

while t.time() != time(0,0,0):
    t += timedelta(minutes=5)
    mylist += [t.time()]
    
print(mylist)

#
[datetime.time(3, 0), datetime.time(3, 5), datetime.time(3, 10),
...
...
 datetime.time(23, 50), datetime.time(23, 55), datetime.time(0, 0)]
→ Ссылка