как проверить смещение даты и времени в python - PullRequest
0 голосов
/ 28 января 2020

у меня есть эти три даты и времени из пользовательского ввода со смещением, как показано ниже

2019-04-02 11:11:31.552611+00 и

2019-06-20 12:48:56.862291+05:30 и

2019-06-20 12:48:56.862291+00:00

который сохранен в моей Django локальной базе данных, но теперь я должен проверить, что datetime имеет смещение, отличное от +00:00

, так как проверить?

Ответы [ 2 ]

0 голосов
/ 28 января 2020

используя общее количество секунд, я частично решил свою проблему

    if parser.parse('2019-06-20 12:48:56.862291+00:00').utcoffset().total_seconds() is == 0.0:
        return True # it has 00 offset
    else:
        return False # it has other format
0 голосов
/ 28 января 2020

Возможно, вы захотите включить больше информации о вашей ситуации, поскольку она кажется мне странной. Обычно даты хранятся в UT C в Django, а затем преобразуются обратно в часовой пояс запрашивающего пользователя.

Но чтобы ответить на ваш ближайший вопрос:

def has_utc_offset(value):
    offset = value.utcoffset()
    if offset is None:
        return None
    return offset.total_seconds() == 0.0

Вот документы: https://docs.python.org/3.8/library/datetime.html#datetime .datetime.utcoffset

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...