Python - Working out if time now is between two times

后端 未结 3 1732
时光说笑
时光说笑 2020-12-10 07:43

I\'m trying to find the cleanest/most pythonic way of evaluating if \"now\" is between two times; However; the Start/End times may, or may not, fall across a day boundary- f

3条回答
  •  無奈伤痛
    2020-12-10 07:53

    def is_hour_between(start, end, now):
        is_between = False
    
        is_between |= start <= now <= end
        is_between |= end < start and (start <= now or now <= end)
    
        return is_between
    

    test with:

    assert is_hour_between(6, 10, 6)
    assert not is_hour_between(6, 10, 4)
    assert is_hour_between(17, 20, 17)
    assert not is_hour_between(17, 20, 16)
    

提交回复
热议问题