Python 时间表库的机制

Mechanics of the Python schedule library

我想为 Python 使用 Schedule 库,但我不太明白它是如何工作的。

def job():
    % my program here

schedule.every().day.at("10:30").do(job)

如果我从终端运行此代码一次,它是否总是每天运行 job 10:30?或者我是否还需要添加类似的内容:

while True:
    schedule.run_pending()
    time.sleep(1)

(我从库的 github 获取所有这些代码)

或者我是否需要按照图书馆常见问题解答中的描述continuously run the scheduler without blocking the main thread

我的终端需要一直打开吗?

根据您链接的 github 文档以及 developer interface,您必须将 run_pending()sleep 的一些长度放入无限循环。

您不需要 运行 来自另一个线程的调度程序,除非您的程序在主线程中执行除调度之外的某些操作。如果你只是用它来安排时间,那是没有必要的。

如果关闭终端,整个程序都会关闭,所以是的,终端需要保持打开状态。