如何在python中使用带有日期时间的循环

如何在python中使用带有日期时间的循环,python,datetime,Python,Datetime,我有两个不同的时间,我想第一次从whit开始,第二次以一个特定的数字前进,如何用python实现呢 例子: 10:00:00 10:15:00 10:30:00 10:45:00 11:00:00如果您使用Python的标准datetime库,则这一点非常简单: from datetime import datetime, timedelta start = datetime(2020, 1, 1, 10, 0) end = datetime(2020, 1, 1, 11, 0) times

我有两个不同的时间,我想第一次从whit开始,第二次以一个特定的数字前进,如何用python实现呢 例子: 10:00:00 10:15:00 10:30:00 10:45:00
11:00:00

如果您使用Python的标准datetime库,则这一点非常简单:

from datetime import datetime, timedelta

start = datetime(2020, 1, 1, 10, 0)
end = datetime(2020, 1, 1, 11, 0)

timestamp = start
while timestamp <= end:
    print(timestamp.time())
    timestamp += timedelta(minutes=15)
请注意,您实际上并不需要日期,但在
时间
上使用
日期时间
(不包括日期)可以使其余代码更易于编写和理解。当然,您可以实现一个
time
的子类,该子类可以很好地与
timedelta
配合使用,但这更高级,而且远远超出了问题的范围


我选择的日期(2020-01-01)是任意的,它将适用于任何最近的日期。例如,您可以将
今天
组合
时间
一起使用。

开始和结束时间变量是什么类型?我不知道是否有其他方法,但您可以轻松地将其转换为秒,然后添加所需的数字,然后再将其转换回秒datetime@Mureinik整数,例如:time2=datetime.timedelta(小时=10,分钟=30)时间3=datetime.timedelta(小时=11,分钟=10)|请从“演示如何解决此编码问题?”与堆栈溢出无关。您必须诚实地尝试解决方案,然后询问有关实现的特定问题。堆栈溢出不是为了替换现有教程和文档。
10:00:00
10:15:00
10:30:00
10:45:00
11:00:00