如何让函数在每日指定时间段不返回内容?以13:50-14:20为例
实现方案
核心逻辑:在Show()函数入口处先校验当前时间是否属于指定的静默区间,命中区间直接返回,跳过原有逻辑即可,全程只用Python标准库,无需引入第三方依赖。
代码实现
首先引入时间处理模块:from datetime import datetime
修改后的Show()函数示例:
def Show(): current_time = datetime.now() # 配置静默时间段,可根据需求自行修改时分参数 silence_start = current_time.replace(hour=13, minute=50, second=0, microsecond=0) silence_end = current_time.replace(hour=14, minute=20, second=0, microsecond=0) # 命中静默区间直接返回,无任何输出 if silence_start <= current_time < silence_end: return # 此处保留你原有的Show函数业务逻辑 print("Show函数正常执行输出")
补充说明
- 判断逻辑天然支持每日循环生效,无需额外处理日期匹配,每次调用都会取当日的静默时段做对比
- 时间精度默认到秒级,如有更高精度要求可以调整
microsecond参数的配置值 - 静默时段默认返回
None,如果你有自定义返回值的需求,直接修改return语句后的内容即可 - 如果需要配置多个静默时间段,只需要多写几个区间判断条件即可
内容的提问来源于stack exchange,提问作者Jean123
相关产品推荐
相关产品推荐

