def is_between(start_at, end_at) -> bool: """ 判斷當前時間是否在指定時間之間 例如:指定時間段為[09:00:00, 18:00:00]若當前時間是 2021年8月16日17:53:45 ,判斷是否在這個時間段,返回 True 另外:若指定時間段為[22:00:00, 02:00:00]若當前時間是 2021年8月16日23:00:00 ,同樣返回 True :param start_at: :param end_at: :return bool: """ startAtStr = str(start_at).strip() endAtStr = str(end_at).strip() if len(startAtStr) > 0 and len(endAtStr) > 0: startAt = time.strftime("%Y-%m-%d") + " " + startAtStr endAt = time.strftime("%Y-%m-%d") + " " + endAtStr startAtTime = int(time.mktime(time.strptime(startAt, '%Y-%m-%d %H:%M:%S'))) endtAtTime = int(time.mktime(time.strptime(endAt, '%Y-%m-%d %H:%M:%S'))) nowTime = int(time.time()) if startAtTime < endtAtTime: return startAtTime <= nowTime <= endtAtTime else: tomorrowDate = (datetime.datetime.now() + datetime.timedelta(days=1)).strftime('%Y-%m-%d') # 明天的日期 endAt = tomorrowDate+" "+endAtStr endtAtTime = int(time.mktime(time.strptime(endAt, '%Y-%m-%d %H:%M:%S'))) return startAtTime <= nowTime <= endtAtTime return False