2016-07-07 2 views
0
settingsNightStart = settings[28] 
settingsNightStop = settings[29] 


if datetime.time(settingsNightStart) <= datetime.time.now() <= datetime.time(settingsNightStop): 
    Night = 1 

У меня есть две переменные, поступающие из базы данных, в которой пользователи хранят там время начала и окончания времени в 24-часовом формате (0-23). Есть ли лучший способ сохранить этот параметр у пользователя?Python определяет, находится ли время между двумя часами в переменных

Мне нужно выяснить, как определить, находится ли текущее время между этими двумя временами. Большую часть времени это нужно будет определить ночью, когда время для пользователей будет начинаться с 8 вечера и заканчиваться в 7 утра. Когда я запускаю сценарий, мне нужно знать, находится ли текущее время между этими часами. Я не знаю, может ли datetime работать с тем, что я пытаюсь сделать?

Спасибо за любую помощь.

+0

Что такое формат времени? Если у вас всего 2 числа, представляющие часы (без информации дня), можно утверждать, что любое число (я думаю, в пределах допустимого диапазона чисел - 0 -> 23) находится между ними ... – mgilson

+0

Я отредактировал вопрос. Спасибо – jdecker

+1

Вероятно, вы можете определить это в самой базе данных. Для этой функции MySQL имеет 'NOW()'. –

ответ

0

Предположим, у вас есть start_hour и stop_hour:

this_hour = datetime.now().hour if start_hour > stop_hour: night = start_hour < this_hour or this_hour < stop_hour else: night = start_hour < this_hour < stop_hour

+0

Отлично! Благодаря! – jdecker

Смежные вопросы