如何在 Python 中将一天中的分钟附加到列表中?



我知道如何将项目附加到列表中:

minutes = []
minutes.append('08:30')

我的问题是,如何在上午 8:30 到 15:00 之间循环所有分钟,并将它们附加到列表中?

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

或者也许每 10 分钟一次

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

有朋友可以帮忙吗?

您可以使用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']

此代码将为您提供从08:3015: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']

您可以通过将delta = timedelta(minutes = 1)中的minutes值更改为10来获取每 10 分钟一次的时间。

最新更新