Python 为什么我能';t在2个时间点上迭代?
我的任务是得到一份在02:19:30和11:09:29之间所有可能的时间变化的列表,就是:[02:19:30,02:19:31,…,11:09:29] 我编写这段代码是为了在几秒钟内迭代(“打印”将被列表附加所取代): 但我一直在犯这样的错误: 回溯(最近一次呼叫最后一次): 文件“F:\PythonProjects\Python-lab5\main.py”,第16行,在 开始时间+=增量 TypeError:不支持+=:“datetime.time”和“datetime.timedelta”的操作数类型 怎么了?Python 为什么我能';t在2个时间点上迭代?,python,datetime,iteration,Python,Datetime,Iteration,我的任务是得到一份在02:19:30和11:09:29之间所有可能的时间变化的列表,就是:[02:19:30,02:19:31,…,11:09:29] 我编写这段代码是为了在几秒钟内迭代(“打印”将被列表附加所取代): 但我一直在犯这样的错误: 回溯(最近一次呼叫最后一次): 文件“F:\PythonProjects\Python-lab5\main.py”,第16行,在 开始时间+=增量 TypeError:不支持+=:“datetime.time”和“datetime.timedelta”的
time
s实际上是“抽象的”——如果您想对它们进行算术运算,您需要使用完整的datetime
s
start_time = datetime.datetime(2021, 1, 1, 2, 19, 30)
end_time = datetime.datetime(2021, 1, 1, 11, 9, 29)
delta = datetime.timedelta(seconds=1)
while start_time != end_time:
print(str(start_time.time()))
start_time += delta
你的MRE比需要的要长。除了非法操作
start\u time+delta
,您可以删除所有内容。不要使用=代码>,使用
start_time = datetime.datetime(2021, 1, 1, 2, 19, 30)
end_time = datetime.datetime(2021, 1, 1, 11, 9, 29)
delta = datetime.timedelta(seconds=1)
while start_time != end_time:
print(str(start_time.time()))
start_time += delta