PHP前端开发

如何使用Python实现每分钟执行一次任务,而不影响其他任务的执行?

百变鹏仔 3个月前 (01-14) #Python
文章标签 而不

python 定时任务教程

问题:如何在 python 中实现间隔 1 分钟运行的任务,同时不影响其他任务的执行?

解答:

可以使用 python 的 threading模块和time模块来解决这个问题。以下是三种可行的解决方案:

立即学习“Python免费学习笔记(深入)”;

方案一:有时间间隔代码放分线程

import threadingimport timeclass threading0(threading.thread):    def __init__(self):        threading.thread.__init__(self)    def run(self):        while true:   # 条件自定,不能为空。            time.sleep(60)   # 单位:秒threading0().start()while true:   # 条件自定,不能为空。    # 执行不等待任务

方案二:无时间间隔代码放分线程

import threadingimport timeclass threading0(threading.thread):    def __init__(self):        threading.thread.__init__(self)    def run(self):        while true:   # 条件自定,不能为空。            # 执行不等待任务threading0().start()while true:   # 条件自定,不能为空。    # 执行等待任务(时间不超过1秒,超过1秒可从sleep中减去)。    time.sleep(60)   # 单位:秒

方案三:有时间间隔代码无时间间隔代码统统放分线程

import threadingimport timeclass threading0(threading.Thread):    def __init__(self):        threading.Thread.__init__(self)    def run(self):        while True:   # 条件自定,不能为空。            # 执行不等待任务class threading1(threading.Thread):    def __init__(self):        threading.Thread._init__(self)    def run(self):        while True:   # 条件自定,不能为空。            # 执行等待任务(时间不超过1秒,超过1秒可从sleep中减去)。            time.sleep(60)   # 单位:秒t0 = threading0()t1 = threading1()t0.start()t1.start()