Python - как я могу округлить объект datetime до самого последнего квартала предыдущего квартала?

Допустим, у меня есть объекты даты и времени. Я бы хотел, чтобы они округлялись до ближайшего четверти часа:

2014-07-18T14:23:12 --> 2014-07-18T14:15:00
2014-07-18T14:14:59 --> 2014-07-18T14:00:00
2014-07-18T00:00:00 --> 2014-07-18T00:00:00

И т.п.

1 ответ

rounded_qtr_hour = lambda dt: datetime.datetime(dt.year, dt.month, dt.day, dt.hour,
                                                15*(dt.minute // 15))

По сути, вы создаете новый объект (модификация старого - менее функциональный подход) с эквивалентным годом, месяцем, днем, часом и округлением минуты до последнего 15-минутного интервала (// деление по полу).

Другие вопросы по тегам