Modo Pythonic per aggiungere oggetti datetime.date e datetime.time


197

Ho due oggetti che rappresentano la stessa istanza dell'evento --- uno contiene la data, l'altro l'ora di questo evento e voglio creare un oggetto datetime.

Dal momento che non si può semplicemente aggiungere oggetti data e ora (la seguente chiamata fallisce):

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

Risposte:


356

È nei documenti di Python .

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

ritorna

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

2
Questo però perde tzinfo (se la data ne ha una). C'è un modo per tenerlo?
ypercubeᵀᴹ

E in Python 3? Impossibile trovarecombine()
Olivier Pons,

@OlivierPons non è cambiato nulla in Python3: docs.python.org/3/library/…
eumiro

Mi dispiace che tu abbia ragione, combine()può essere applicato a un datetimevalore. Grazie mille
Olivier Pons,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.