Как добавить минуты дня в список в Python? - PullRequest
1 голос
/ 20 июня 2020

Я знаю, как добавить элемент в список:

minutes = []

minutes.append('08:30')

мой вопрос, как l oop все минуты с 8:30 до 15:00 и добавить их в список?

format like minutes = ['08:30','08:31',...,15:30] 

или, может быть, каждые 10 минут, например,

minutes = ['08:30','08:40',...,'15:30']

Любой друг может помочь?

Ответы [ 2 ]

1 голос
/ 20 июня 2020

Вы можете использовать pd.date_range:

import pandas as pd
time_list = []
for time in pd.date_range('8:30','15:00', freq='1min').time:
    time_list.append(time.strftime('%H:%M'))
print(time_list)

Вывод:

['08:30', '08:31', '08:32', '08:33', ... , '14:57', '14:58', '14:59', '15:00']

Более кратко:

>>> pd.date_range('8:30','15:00', freq='1min'
                 ).format(formatter=lambda x:x.strftime('%H:%M'))

['08:30', '08:31', '08:32', '08:33', ... , '14:57', '14:58', '14:59', '15:00']
1 голос
/ 20 июня 2020

Этот код даст вам массив строковых представлений каждой из минут от 08:30 до 15:00:

from datetime import datetime, timedelta

start = datetime.strptime('08:30', '%H:%M')
end = datetime.strptime('15:00', '%H:%M')
delta = timedelta(minutes = 1)
times = []
while start <= end:
    times.append(start.strftime('%H:%M'))
    start += delta
print(times)

Вывод:

['08:30', '08:31', '08:32', '08:33', ... , '14:57', '14:58', '14:59', '15:00']

Вы можете получить раз каждые 10 минут, изменяя значение minutes в delta = timedelta(minutes = 1) на 10.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...