python 每天定时运行程序(傻瓜式倒计时)

本文介绍了如何使用Python实现一个简单的倒计时定时器,用于每天定时运行指定的程序。作者分享了来源于Stack Overflow的代码,并指出虽然网络上已有许多类似解决方案,但亲手实践能带来更深的理解。用户只需定义自己的run_your_script()函数并设置时间即可应用。
import time
from datetime import datetime, timedelta

def run_your_script(): # 自定义需要定时运行的函数
    print("\n程序运行中。")
    
def countdown(deltaT, time_set):
    # deltaT: float, 剩余的时间
    # time_set: datetime object, 设定的时间
    
    print("\n调用程序的固定时间为:", time_set)
    
    while deltaT:
        minutes, seconds = divmod(deltaT, 60) # 分钟数为deltaT➗60的商部分,秒钟数为余数部分
        hours = minutes // 60 # 小时数: 分钟数除以60的商
        minutes -= hours * 60 # 分钟数:分钟数减去小时*60
        # 以上做法的目的:将时分秒都化为0-60内的数字,美观。

        timeformat = '{:02d}:{:02d}:{:02d}'.format(hours, minutes, seconds)
        
        print("距离下次调用的剩余时间为:", timeformat, end='\r') 
        # '\r'确保光标在起始位置,使得剩余时间不会一行行输出,美观
        time.sleep(1) # 停顿一秒
        deltaT -= 1   # 时间减少一秒

    run_your_script()

# 以下设定的时间可由用户输入或配置文件提供,注意字符串与整型的类型转换
HOUR = 21
MINUTE = 15
SECOND = 0

while True:
    now = datetime.now() # 获取现在的时间
    time_set = now.replace(hour = HOUR, minute = MINUTE, second = SECOND) # 设置的时间
    
    #
Mamsds桌面倒计时是一款桌面倒计时程序,其最大的特点就是提供了极其丰富的配置选项,用户可以通过自行配置实现需要的功能,而相较于1.0、 1.5、 2.0,最新版本3.0采用了全新的程序开发方法开发,重写了所有代码,在保留原有稳定性灵活性的同时极大地提高了易用性,很大程度上实现了“所见即所得”。 Mamsds桌面倒计时3.0支持用户自定义设置如下项: 1) 程序背景图片; 2) 独立设置倒计时日期、字体、字号、效果、颜色、位置、大小; 3) 标题文字及其字体、字号、效果、颜色、位置、大小 4) 窗口透明度、位置、大小、标题、形状、刷新时间 5) 通过标准配置文件直接配置配置项和显示界面 2 注意事项 1) 设置本程序不检查用户权限,任何可以接触软件的人均可以进行设置,运用于重要场合请自行检查配置的完整性。 2) 本程序基于.NET Framework 4.0开发,计算机版本不够的请运行程序目录下的dotNetFx4.exe。 3) 本程序可于任意目录直接运行,但是需要实现开机启动则必须固定启动目录。 4) 适用本软件发现的任何bug希望可以反馈,Mamsds将尽可能地解决问题 5) 加入开机启动需修改注册表项,用户请先检查所在账户的权限并注意杀毒软件拦截。 6) 本文件支持高级用户直接通过修改程序设置文件(setting.ini)和界面设置文件(userdoc.rtf)配置程序。但是,此种方式配置后软件将直接读取配置项而不检查数据有效性,可能导致问题,请慎用。   【4.0.0804更新】:   1、加入默认的傻瓜编辑模式。   2、默认不再通过主界面编辑内容,极大提高可用性。   3、取消专家模式和一般模式。   4、合理调整赞助商内容。   5、修改默认倒计时为孔子诞辰。   6、再次加入代码混淆。   7、默认不弹出博客。   8、解决定义Ini操作类导致的空文件建立和通过文件是否存在判定写出默认数据的冲突。   9、更新记录第一次运行的方法。   10、解决了双UI文件背景隐藏导致的显示失效问题。   11、删除无意义设置项。   12、修正重构设置界面后带来的部分控件事件失效的问题。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值