[您好,我正在尝试创建一种方法,该方法返回一个包含程序应发送警报的小时数的列表,对于所有情况,都需要在00:00发送第一个警报,因此如果使用120分钟,表示每两个小时发送一次,但是每4小时(240分钟)发送一次警报无效,
这是我的代码
def candle_close_timings(candle):
frame = None
if candle >= 60: frame = candle/60
print (frame)
minutes = []
hours = []
for hours in range(0, 24):
minute = 0
while minute <= 59:
minutes.append('%02d:%02d' % (hours, minute))
minute = minute + candle
del minutes[frame-1::frame]
return minutes
print (candle_close_timings(120))
这很好,但是现在请尝试:print (candle_close_timings(240))
它应该返回[00:00 , 04:00, 08:00...]
任何人都可以帮助我如何分割列表
您使问题复杂化了。考虑到该方法只能在确切的小时内运行(即60
的倍数),这是一个非常简单的解决方案:
正如评论者所指出的,您的解决方案效率不高(您在for循环内运行while循环)。