您好,登錄后才能下訂單哦!
小編給大家分享一下用Python寫定時器的方法,希望大家閱讀完這篇文章后大所收獲,下面讓我們一起去探討吧!
用Python怎么寫定時器
定時器功能:在設置的多少時間后執行任務,不影響當前任務的執行
推薦學習《Python教程》。
用Python寫定時器的方法如下:
1、常用方法:
from threading import Timer t = Timer(interval, function, args=None, kwargs=None) # interval 設置的時間(s) # function 要執行的任務 # args,kwargs 傳入的參數 t.start() # 開啟定時器 t.cancel() # 取消定時器
2、簡單示例:
import time from threading import Timer def task(name): print('%s starts time: %s'%(name, time.ctime())) t = Timer(3,task,args=('nick',)) t.start() print('end time:',time.ctime()) # 開啟定時器后不影響主線程執行,所以先打印 ------------------------------------------------------------------------------- end time: Wed Aug 7 21:14:51 2019 nick starts time: Wed Aug 7 21:14:54 2019
3、驗證碼示例:60s后驗證碼失效
import random from threading import Timer # 定義Code類 class Code: # 初始化時調用緩存 def __init__(self): self.make_cache() def make_cache(self, interval=60): # 先生成一個驗證碼 self.cache = self.make_code() print(self.cache) # 開啟定時器,60s后重新生成驗證碼 self.t = Timer(interval, self.make_cache) self.t.start() # 隨機生成4位數驗證碼 def make_code(self, n=4): res = '' for i in range(n): s1 = str(random.randint(0, 9)) s2 = chr(random.randint(65, 90)) res += random.choice([s1, s2]) return res # 驗證驗證碼 def check(self): while True: code = input('請輸入驗證碼(不區分大小寫):').strip() if code.upper() == self.cache: print('驗證碼輸入正確') # 正確輸入驗證碼后,取消定時器任務 self.t.cancel() break obj = Code() obj.check()
看完了這篇文章,相信你對用Python寫定時器的方法有了一定的了解,想了解更多相關知識,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。