0

I was reading:

https://stackoverflow.com/a/38836918/15033009

I copied the solution like this:

    if is_now_in_time_period(datetime.time(7, 30), datetime.time(23, 59), datetime.datetime.now().time()):
        print('hi')

But python gives me an error:

PycharmProjects/pythonProject1/main.py", line 207, in main if is_now_in_time_period(datetime.time(7, 30), datetime.time(23, 59), datetime.datetime.now().time()): TypeError: descriptor 'time' for 'datetime.datetime' objects doesn't apply to a 'int' object

1 Answers1

0

IIUC:

import datetime as dt

def is_time_between(begin_time, end_time, check_time=None):
    # If check time is not given, default to current UTC time
    check_time = check_time or dt.datetime.utcnow().time()
    if begin_time < end_time:
        return check_time >= begin_time and check_time <= end_time
    else: # crosses midnight
        return check_time >= begin_time or check_time <= end_time

if is_time_between(dt.time(7, 30), dt.time(23, 59),dt.datetime.now().time()):
    print('hi')

hi
Pygirl
  • 12,969
  • 5
  • 30
  • 43
  • I have another line which won't work after changing import: start_time = time.time() –  Jan 24 '21 at 12:57