python中的定时器 ——Threading.timer

本文介绍Python中如何使用Threading.Timer实现单次及循环定时任务。通过具体代码示例展示了定时器的设置与启动过程,并解释了定时器的工作原理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、单次定时器

定时器是软件里常用的模块,用于定期执行任务,单次执行定时器

#定时器执行的函数
def func():
    print('执行函数时间:{}'.format(standar_time()))
    time.sleep(3)
    print('休息三秒时间:{}'.format(standar_time()))
    print('hello,word!')
    print('函数结束时间:{}'.format(standar_time()))

#计算并打印出当前时间的标准格式
def standar_time():
    timestamp1 = time.time()
    cur_time = datetime.fromtimestamp(timestamp1)
    return cur_time

#定时器的延时时间,2s
delay = 2
#创建定时器对象
timer = threading.Timer(delay,func)
#启动定时器
timer.start()
print('定时启动时间:{}'.format(standar_time()))

运行后输出结果:

定时启动时间:2024-04-19 09:21:39.460646
执行函数时间:2024-04-19 09:21:41.472267
休息三秒时间:2024-04-19 09:21:44.486207
hello,word!
函数结束时间:2024-04-19 09:21:44.486207

从输出时间来看,定时器启动是39秒,执行func函数是41秒,中间是定时器设置的启动延迟时间delay为2秒。上面的两行代码实现一次定时,即start()执行后,过delay秒执行timerHandler函数。

2、循环定时器

循环重复执行定时器,通常是在软件中最常用的方式

#定时器执行的函数
def func():
    time.sleep(3)
    print('hello,word!')

#计算并打印出当前时间的标准格式
def standar_time():
    timestamp1 = time.time()
    cur_time = datetime.fromtimestamp(timestamp1)
    return cur_time

def Timers(delay):
    #要执行的代码体
    func()
    print('fun函数执行时间:{}'.format(standar_time()))
    #代码体按顺序执行后,重新启动一个定时器,调用函数自身
    timer = threading.Timer(delay,Timers,args=[delay])
    timer.start()
    
#单独创建一个定时器,用于首次执行
delay = 1
timer = threading.Timer(delay,Timers,args=[delay])
timer.start()

输出内容:

hello,word!
fun函数执行时间:2024-04-19 09:33:03.278519
hello,word!
fun函数执行时间:2024-04-19 09:33:07.296772
hello,word!
fun函数执行时间:2024-04-19 09:33:11.318020
hello,word!
fun函数执行时间:2024-04-19 09:33:15.335278
hello,word!
fun函数执行时间:2024-04-19 09:33:19.346552
hello,word!
fun函数执行时间:2024-04-19 09:33:23.366803
........

两个执行完成func函数,每次间隔4秒,1秒用于定时器启动后延迟时间的设定,3秒用于执行func整个函数所需时间。将定时器每次需要重复循环执行的代码块放置到下一次定时器启动的上面,就完成了定时循环重复执行的效果。

### 关于 DeepSeek 和 Kimi 部署指南 #### DeepSeek 的本地部署方法 为了实现 DeepSeek 的本地部署,可以遵循先前分享的方法[^1]。此过程被简化为三个主要阶段,旨在让即使是初学者也能够顺利完成安装配置工作。通过这种方法,用户可以在个人计算机上运行 DeepSeek AI 模型而无需额外支付费用。 #### 结合 Kimi 提升功能应用 对于希望进一步利用这些工具来提高生产力的用户来说,Kimi 是一个强大的补充工具,尤其擅长处理长文本内容,支持大约二十万汉字的无损输入输出操作[^2]。这意味着它可以有效地辅助撰写复杂文档或是从大量文字材料中提取精华部分。 #### 使用 DeepSeek 加 KIMI 创建 PPT 流程概述 当涉及到具体的任务比如自动生成 PowerPoint 演示文稿时,则可以通过结合两者的能力来进行高效创作。具体而言,先是在 DeepSeek 中定义好所需的 PPT 架构以及具体内容要点;之后再借助 KIMI 平台上的专门模块——即"PPT 助手"服务——将上述信息转化为视觉化的幻灯片形式,并允许使用者挑选不同的设计样式以适应不同场合的需求[^3]。 ```bash # 假设已经完成了 DeepSeek 和 Kimi 的环境搭建与账号创建 # 接下来按照如下命令行提示进行交互式操作(仅作为示意) # 登录 DeepSeek 获取所需的内容大纲 $ deepseek login $ deepseek prompt "请用 Markdown 格式生成一份关于人工智能发展趋势的 PPT 大纲..." # 将得到的结果复制粘贴至 Kimi 界面内指定区域 # 在浏览器打开 https://www.kimi.com/ # 进入 “kimi+” -> “PPT 助手” # 发送之前准备好的 markdown 文本给平台处理 ```
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值