检查当前时间是否在时间范围之间

时间:2016-03-16 23:06:25

标签: python

我正在编写一个python应用程序,我只希望在指定为参数的特定时间范围之间进行处理。

e.g。如果用户在上午9:00到晚上10:00提供参数,那么处理将仅在该范围之间进行。

下面的代码似乎实现了我想要的但是我不确定如何处理开始时间例如的情况。晚上11:00,结束时间是08:00 am。在这种情况下,8am将引用第二天,但下面的代码将无法处理。

有什么建议吗? 感谢

    now = datetime.now()
    now_time = now.time()

    if now_time >= args.start and now_time <= args.end:
        # Process as normal
    else:
        # Sleep until start time
        dt_now = timedelta(hours=now_time.hour, minutes = now_time.minute, seconds=now_time.second, microseconds=now_time.microsecond)
        dt_start = timedelta(hours=args.start.hour, minutes = args.start.minute, seconds=args.start.second, microseconds=args.start.microsecond)
        time_to_wait = abs((dt_start - dt_now).seconds)
        time.sleep(time_to_wait)

0 个答案:

没有答案