Проверьте, находится ли таймслот между указанным диапазоном времени

Я пытаюсь реализовать генератор академического расписания, используя фреймворк django, в котором я распределяю лекции и лабораторные работы по определенным временным интервалам случайным образом.

Итак, расписание учебных занятий начинается с 9:30 AM - 4:00 PM, в котором будет перерыв в 12:30 PM - 1:00 PM лекции имеют 1 hour таймслотов, а лабораторные работы - 2 hours таймслотов.

Поскольку я распределяю лабораторные или лекции случайным образом, возникает проблема, когда лабораторная выбрана в 11:30, то по умолчанию на лабораторную отводится 2 часа, поэтому она распределяет время с 11:30 утра до 13:30 вечера. Поэтому я ищу способ проверить, совпадает ли время перерыва с временем лабораторной работы, и если да, то назначить вместо него лекцию.

if inc <= shift_1.to_time and (inc <= shift_1.break_from_time):
  .
  .
  lab allocating function
  .
  .
else:
  .
  .
  lect allocating function
  .
  .

Здесь,

inc - incremented hours ( for lab current time slot + 2)
shift1.to_time - Ending Time for day ( 4:00 PM )
shift_1.break_from_time - Starting time for break ( 12:30 PM )

Оговорка if здесь бесполезна, так как я просто проверяю, если время inc больше времени начала перерыва, поэтому мне нужно проверить, не пересекаются ли часы работы лаборатории с временем перерыва.

Вернуться на верх