Найти текущий временной интервал в питоне? - PullRequest
5 голосов
/ 22 февраля 2011

Как мне найти ближайший 15 (или 10) минутный интервал в питоне?например,

>>> datetime.datetime.now()
datetime.datetime(2011, 2, 22, 15, 43, 18, 424873)

Мне бы хотелось, чтобы текущий 15-минутный интервал (15: 30-15: 44), поэтому я хотел бы преобразовать вышеупомянутую дату и время в

datetime.datetime(2011, 2, 22, 15, 30, 00, 00)

Ответы [ 4 ]

4 голосов
/ 22 февраля 2011

Довольно простой способ для меня:

from datetime import datetime, timedelta
now = datetime.now()
now = now - timedelta(minutes = now.minute % 15, seconds = now.second, microseconds = now.microsecond )

Надеюсь, это поможет.

1 голос
/ 22 февраля 2011

Я думаю, что для этого случая использование replace более просто, чем timedelta :

>>> import datetime
>>> now = datetime.datetime.now()
>>> now.replace(minute=(now.minute - (now.minute % 15)), second=0, microsecond=0)
datetime.datetime(2012, 3, 23, 11, 15)
>>> 
0 голосов
/ 22 февраля 2011

Просто установите минуты на

min = min - min %  15 

и установите более короткие единицы времени (секунды, мс, ..) на 0

0 голосов
/ 22 февраля 2011
...