Пітонічний спосіб додавання об'єктів datetime.date та datetime.time


197

У мене є два об'єкти, які представляють один і той же екземпляр події --- один містить дату, інший - час цієї події, і я хочу створити об’єкт дати.

Оскільки не можна просто додати об’єкти дати та часу (наступні помилки виклику):

 datetime.date(2011, 01, 01) + datetime.time(10, 23)

Відповіді:


354

Це в документах python .

import datetime
datetime.datetime.combine(datetime.date(2011, 1, 1), 
                          datetime.time(10, 23))

повертає

datetime.datetime(2011, 1, 1, 10, 23)

2
Це втрачає tzinfo, хоча (якщо дата є). Чи є спосіб її зберегти?
ypercubeᵀᴹ

А в Python 3? Не можу знайтиcombine()
Олів'є Понс

@OlivierPons нічого не змінилося в Python3: docs.python.org/3/library/…
eumiro

Вибачте, що ви праві, що combine()можна застосувати до datetimeзначення. Велике спасибі
Олів'є Понс
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.