国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

Python實現定時任務

2020-02-23 04:20:06
字體:
來源:轉載
供稿:網友

Python下實現定時任務的方式有很多種方式。下面介紹幾種

循環sleep:

這是一種最簡單的方式,在循環里放入要執行的任務,然后sleep一段時間再執行。缺點是,不容易控制,而且sleep是個阻塞函數。

def timer(n):   '''''   每n秒執行一次   '''   while True:      print time.strftime('%Y-%m-%d %X',time.localtime())      yourTask() # 此處為要執行的任務      time.sleep(n)  

threading的Timer:

threading模塊中的Timer能夠幫助實現定時任務,而且是非阻塞的。

比如3秒后打印helloworld:

def printHello():   print "hello world"  Timer(3, printHello).start() 

比如每3秒打印一次helloworld:

def printHello():   print "Hello World"   t = Timer(2, printHello)   t.start()   if __name__ == "__main__":   printHello() 

使用sched模塊:

sched是一種調度(延時處理機制)。

# -*- coding:utf-8 -*- # use sched to timing import time import os import sched   # 初始化sched模塊的scheduler類 # 第一個參數是一個可以返回時間戳的函數,第二個參數可以在定時未到達之前阻塞。 schedule = sched.scheduler(time.time, time.sleep)   # 被周期性調度觸發的函數 def execute_command(cmd, inc):   '''''   終端上顯示當前計算機的連接情況   '''   os.system(cmd)   schedule.enter(inc, 0, execute_command, (cmd, inc))   def main(cmd, inc=60):   # enter四個參數分別為:間隔事件、優先級(用于同時間到達的兩個事件同時執行時定序)、被調用觸發的函數,   # 給該觸發函數的參數(tuple形式)   schedule.enter(0, 0, execute_command, (cmd, inc))   schedule.run()   # 每60秒查看下網絡連接情況 if __name__ == '__main__':   main("netstat -an", 60) 

使用定時框架APScheduler:

APScheduler是基于Quartz的一個Python定時任務框架。提供了基于日期、固定時間間隔以及crontab類型的任務,并且可以持久化任務。

這個現在還沒自己嘗試過,等過段時間用了再來補充。

使用windows的定時任務:

這里可以將所需要的Python程序打包成exe文件,然后在windows下設置定時執行。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持武林站長站。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 长宁县| 嘉兴市| 连城县| 沙雅县| 闵行区| 吉水县| 广德县| 宜丰县| 大悟县| 六盘水市| 庄河市| 桂林市| 苗栗县| 两当县| 鹤岗市| 正安县| 上林县| 虎林市| 大同县| 彩票| 濮阳市| 宁武县| 聊城市| 忻州市| 普宁市| 台北县| 元江| 宁安市| 内丘县| 融水| 天镇县| 西城区| 斗六市| 大邑县| 孝感市| 农安县| 华安县| 仪陇县| 湟源县| 台北市| 娄烦县|