gpt4 book ai didi

python - 制作时间增量字符串的有效方法?

转载 作者:行者123 更新时间:2023-12-03 09:46:48 26 4
gpt4 key购买 nike

我想创建一个时隙列表(作为字符串)。使用 python 执行此操作的最有效方法是什么?
此列表将从上午 8:00 到晚上 10 点以 15 分钟为增量。我想要一个格式如下的列表:

['8:00am - 8:15am', '8:15am - 8:30am', '8:30am - 8:45am',.......] 
我尝试使用几个 for循环嵌套在一起,直到它变得非常复杂,我知道必须有一种更好、更 Pythonic 的方式来做这样的事情。
谁有想法?

最佳答案

就像@juanpa.arrivillaga 的回答一样,但有格式:

from datetime import datetime, timedelta
t = datetime(1, 1, 1, hour=8, minute=0)
l = []
while t < datetime(1, 1, 1, hour=22, minute=1):
l.append(t.strftime('%I:%M%p') + " - " + (t+timedelta(minutes=15)).strftime('%I:%M%p'))
t += timedelta(minutes=15)

print(l)
>>>
['08:00AM - 08:15AM', '08:15AM - 08:30AM', '08:30AM - 08:45AM', '08:45AM - 09:00AM', '09:00AM - 09:15AM', '09:15AM - 09:30AM', '09:30AM - 09:45AM', '09:45AM - 10:00AM', '10:00AM - 10:15AM', '10:15AM - 10:30AM', '10:30AM - 10:45AM', '10:45AM - 11:00AM', '11:00AM - 11:15AM', '11:15AM - 11:30AM', '11:30AM - 11:45AM', '11:45AM - 12:00PM', '12:00PM - 12:15PM', '12:15PM - 12:30PM', '12:30PM - 12:45PM', '12:45PM - 01:00PM', '13:00PM - 01:15PM', '13:15PM - 01:30PM', '13:30PM - 01:45PM', '13:45PM - 02:00PM', '14:00PM - 02:15PM', '14:15PM - 02:30PM', '14:30PM - 02:45PM', '14:45PM - 03:00PM', '15:00PM - 03:15PM', '15:15PM - 03:30PM', '15:30PM - 03:45PM', '15:45PM - 04:00PM', '16:00PM - 04:15PM', '16:15PM - 04:30PM', '16:30PM - 04:45PM', '16:45PM - 05:00PM', '17:00PM - 05:15PM', '17:15PM - 05:30PM', '17:30PM - 05:45PM', '17:45PM - 06:00PM', '18:00PM - 06:15PM', '18:15PM - 06:30PM', '18:30PM - 06:45PM', '18:45PM - 07:00PM', '19:00PM - 07:15PM', '19:15PM - 07:30PM', '19:30PM - 07:45PM', '19:45PM - 08:00PM', '20:00PM - 08:15PM', '20:15PM - 08:30PM', '20:30PM - 08:45PM', '20:45PM - 09:00PM', '21:00PM - 09:15PM', '21:15PM - 09:30PM', '21:30PM - 09:45PM', '21:45PM - 10:00PM', '22:00PM - 10:15PM']
如果您可以使用 Pandas ,这里有一个简短的答案:
import pandas as pd

dr = pd.date_range('2021-01-01 08:00', '2021-01-01 22:00', freq='15min')
l = [t.strftime('%I:%M%p') + " - " + (t+pd.to_timedelta('15min')).strftime('%I:%M%p') for t in dr]
编辑:根据下面@Shash Sinha 的评论编辑了代码。

关于python - 制作时间增量字符串的有效方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65874794/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com