定时器,指定n秒后执行某操作
from threading import Thread, Timer def hello(): print("hello, world") print("start") t = Timer(5, hello) t.start()
![7.3.8.3 - 并发多线程 死锁和递归锁 - 定时器 7.3.8.3 - 并发多线程 死锁和递归锁 - 定时器](https://image.shishitao.com:8440/aHR0cHM6Ly93d3cuaXRkYWFuLmNvbS9pLzQ0NjFmOWY0ZTljOWFiNDZjNjUwYThmYzVjNjNkM2ZmMS5qcGc%3D.jpg?w=700&webp=1)
![7.3.8.3 - 并发多线程 死锁和递归锁 - 定时器 7.3.8.3 - 并发多线程 死锁和递归锁 - 定时器](https://image.shishitao.com:8440/aHR0cHM6Ly93d3cuaXRkYWFuLmNvbS9pLzQ0NjFmOWY0ZTljOWFiNDZjNjUwYThmYzVjNjNkM2ZmMi5qcGc%3D.jpg?w=700&webp=1)
start hello, world # 5秒后输出
定时输入验证码,错误继续,正确退出
import random from threading import Timer class Code: def __init__(self): self.make_cache() def make_cache(self,interval=5): self.cache = self.make_code() print(self.cache) self.t = Timer(interval,self.make_cache) self.t.start() 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("pls input your code>>: ").strip() if code.upper() == self.cache: print("OK") self.t.cancel() break obj = Code() obj.check()