Pythonische Methode zum Hinzufügen von datetime.date- und datetime.time-Objekten


197

Ich habe zwei Objekte, die dieselbe Ereignisinstanz darstellen - eines enthält das Datum, das andere die Uhrzeit dieses Ereignisses, und ich möchte ein Datum / Uhrzeit-Objekt erstellen.

Da man nicht einfach Datums- und Uhrzeitobjekte hinzufügen kann (folgender Aufruf schlägt fehl):

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

Antworten:


354

Es ist in den Python-Dokumenten .

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

kehrt zurück

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

2
Dies verliert jedoch das Tzinfo (falls das Datum eines hat). Gibt es eine Möglichkeit, es zu behalten?
Ypercubeᵀᴹ

Und in Python 3? Kann nicht findencombine()
Olivier Pons

@OlivierPons nichts hat sich in Python3 geändert: docs.python.org/3/library/…
eumiro

Es tut mir leid, dass Sie Recht haben, combine()kann auf einen datetimeWert angewendet werden. Vielen Dank
Olivier Pons
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.