Я разрабатывал приложение для планирования, в расписании есть много ламп, которые включаются и выключаются в определенное время, скажем, если я начну расписание утром, все лампы включатся, а затем остановятся ночью, но есть некоторые лампы, которые нужно остановить в определенное время. случайное время, а также включить снова. Я пробовал какой-то пакет Python, такой как APScheduler, но у него нет функции остановки и возобновления определенной задачи (или лампы в этом случае).
Этот вопрос с использованием рассола для остановки и возобновления , но я не знаю, как это реализовать, есть ли способ решить это?
Заранее спасибо, извините за мою плохую грамматику.
--ОБНОВЛЕНИЕ--
Вот простая реализация, я не уверен, что этот код правильный.
from datetime import datetime
from time import sleep
class Scheduling:
def __init__(self):
self.lamp = {}
def run(self, lamp_id, start, finish):
"""Called one-time only for each lamp"""
self.lamp[lamp_id] = (start, finish)
while True:
if datetime.now().strftime('%H:%M:%S') == start:
sleep(1)
print 'SET LAMP %s ON' % lamp_id
elif datetime.now().strftime('%H:%M:%S') == finish:
sleep(1)
print 'SET LAMP %s OFF' % lamp_id
def stop(self, lamp_id):
print 'SET lamp %s OFF' % lamp_id
def resume(self, lamp_id):
print 'SET lamp %s ON' % lamp_id
finish = self.lamp[lamp_id][1]
while True:
if datetime.now().strftime('%H:%M:%S') == finish:
print 'SET lamp %s OFF' % lamp_id
if __name__ == '__main__':
schedule = Scheduling()
schedule.run(1, '00:00:00', '00:01:00')