Подтвердить что ты не робот

Существует ли datetime-infinity?

Для поплавков у нас есть специальные объекты, такие как -inf (и + inf) и которые гарантированно сравнивают меньше (и больше) других чисел.

Мне нужно что-то подобное для datetimes, есть ли такая вещь? Порядок в-db должен корректно работать с фильтрами запросов django, и в идеале он должен быть db-агностиком (но, по крайней мере, он должен работать с mysql и sqlite) и агностиком часового пояса.

В настоящее время я использую null/ None, но он создает очень грязные запросы, потому что None выполняет работу как -inf и + inf, и я должен явно учитывать все эти случаи в запросы.

4b9b3361

Ответ 1

Попробуйте следующее:

>>> import datetime
>>> datetime.datetime.max
datetime.datetime(9999, 12, 31, 23, 59, 59, 999999)

Вы можете получить min/max для datetime, date и time.

Ответ 2

Нет; у вас есть значения datetime.datetime.min и datetime.datetime.max.

Гарантируются наименьшие и наибольшие значения datetime, но datetime.datetime.min == datetime.datetime.min все еще True; все остальное больше. Обратное значение истинно для значения datatime.datetime.max.

Существуют также значения min и max для datetime.date и datetime.time.

Ответ 3

Если кто-то использует даты в фрейме данных Pandas:

>>> import pandas as pd
>>> pd.Timestamp.min
Timestamp('1677-09-21 00:12:43.145225')
>>> pd.Timestamp.max
Timestamp('2262-04-11 23:47:16.854775807')