【问题标题】:run python program every 15 minutes when seconds are 0 [duplicate]当秒为0时,每15分钟运行一次python程序[重复]
【发布时间】:2021-08-23 20:12:51
【问题描述】:

我一直在编写此代码,执行时间约为 3-4 秒,我希望它每 15 分钟运行一次,我一直在使用此代码

while True:
  if datetime.datetime.now().minute % 15 == 0:
  ...
  time.sleep(60)

现在我无法在时钟上的秒数为 0 时准确地启动代码运行,因此我希望代码在秒数为零时准确地运行。 提前致谢

【问题讨论】:

标签: python time python-datetime


【解决方案1】:

如果您考虑一下 - 您在 time.sleep(60) 上暂停代码 60 秒,但您没有考虑每次执行代码所需的时间,这会产生时间差。

您可以计算下一次执行发生的时间差,而不是常量60

顺便说一句,如果您想重复执行代码,可以使用crontab 为您执行脚本,它简单且准时,因此您无需担心时间问题

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-06-09
    • 1970-01-01
    • 2017-03-19
    • 2012-06-09
    • 2011-04-25
    • 1970-01-01
    • 2016-07-17
    • 1970-01-01
    相关资源
    最近更新 更多