将任务推迟到一定时间


问题内容

我要在python脚本中执行的操作是休眠几秒钟,直到达到所需的时间。IE:如果runAt设置为15:20,当前时间为10:20,我该如何计算出要睡眠多少秒?我不确定如何将15:20转换为时间和当前日期,然后减去实际时间以获取秒数。


问题答案:

认为您还可以使用以下代码:

from datetime import datetime, time
from time import sleep

def act(x):
    return x+10

def wait_start(runTime, action):
    startTime = time(*(map(int, runTime.split(':'))))
    while startTime > datetime.today().time(): # you can add here any additional variable to break loop if necessary
        sleep(1)# you can change 1 sec interval to any other
    return action

wait_start('15:20', lambda: act(100))