方式一、直接使用while
循环的方式
from datetime import datetime
import time
def timer(n):
while True:
print(datetime.now().strftime("%Y-%m-%d %H:%M:%S"))
time.sleep(n)
timer(5)
方式二、使用threading
模块中的Timer
from datetime import datetime
from threading import Timer
def print_time(inc):
print(datetime.now().strftime("%Y-%m-%d %H:%M:%S"))
"""
Timer的参数说明
inc:表示时间间隔
print_time:执行的函数
(inc,):传递给执行函数的参数
"""
t = Timer(inc, print_time, (inc,))
t.start()
print_time(2)
方式三、使用sched
模块
import time
import sched
from datetime import datetime
schedule = sched.scheduler(time.time, time.sleep)
def print_time(inc):
print(datetime.now().strftime("%Y-%m-%d %H:%M:%S"))
schedule.enter(inc, 0, print_time, (inc,))
def start(inc=60):
schedule.enter(0, 0, print_time, (inc,))
schedule.run()
if __name__ == "__main__":
start(10)
from apscheduler.schedulers.blocking import BlockingScheduler
from datetime import datetime
def job():
print(datetime.now().strftime('%Y-%m-%d %H:%M:%S'))
if __name__ == "__main__":
scheduler = BlockingScheduler()
scheduler.add_job(job, 'interval', seconds=5)
scheduler.start()