首页 > 解决方案 > 如何设置当开始时间大于输入时间时代码应该执行的条件

问题描述

我想将当前时间与 4 小时后添加的同一时间进行比较。我想知道如何启动并保持 4 小时后的时间不变,即使代码停止运行。并且在任何时间点,如果我运行代码,它应该用现在时间验证以后的时间,如果现在时间大于以后的时间,它应该改变以后的时间。

我尝试在 python 中使用 datetime 函数。但是后面的时间总是会重置,并且作为一个问题,if条件永远不会执行。

from datetime import datetime, timedelta
now=datetime.today().hour
later = datetime.now() + timedelta(hours=20)
print(later)
if now < later:
    later = datetime.now() + timedelta(hours=20)
    print("Yes")

标签: pythondatetimetime

解决方案


也许您想稍后写入 .txt 文件,然后在运行脚本时读取?:

with open("latertime.txt", "w", encoding="utf-8") as file:
    file.write(later)

并且通过类比在脚本的开头:

with open("latertime.txt", "r", encoding="utf-8") as file:
    later = file.read()

如有必要,您可以使用 subprocess 模块使 .txt 文件不可见:

subprocess.call(["attrib", "+h", "latertime.txt"])

推荐阅读