首页 > 解决方案 > 如何在循环中计时代码的执行?

问题描述

我想制作一个每 5 秒打印一次“嘿”的程序,我的每 5 秒打印一次,但不止一次。

import datetime


now = datetime.datetime.today()
objectif = datetime.timedelta(seconds = 50)
later = objectif+now

inc = 0

while later > datetime.datetime.today():
    if datetime.datetime.today().second%5==0 and later.microsecond == datetime.datetime.today().microsecond:
        print "hey"

如何每 5 秒只打印一次“嘿”?

标签: python

解决方案


您可以使用time.sleep()

以下将每 5 秒打印一次“嘿”,限制为 50 秒

import datetime
from time import sleep

end_time = datetime.datetime.now() + datetime.timedelta(seconds = 50)

while end_time > datetime.datetime.now():
    print("hey")
    sleep(5)

推荐阅读