import datetime
year = 2016
first_day_of_year = datetime.date.min.replace(year = year)
last_day_of_year = datetime.date.max.replace(year = year)
print(first_day_of_year, last_day_of_year)
duh.
Was, wenn wir den genauen Zeitpunkt des Jahresbeginns oder -endes erfahren wollen? Das ist dasselbe. Ersetzen Sie datetime.date
mit datetime.datetime
und schon haben Sie den ersten letzten Tag des Jahres im datetime.datetime
Format.
Um das Ganze noch ausgefallener zu gestalten, wickeln Sie es in eine Funktion ein:
import datetime
def year_range(year, datetime_o = datetime.date):
return (
datetime_o.min.replace(year = year),
datetime_o.max.replace(year = year)
)
print(year_range(2016, datetime.date))
print(year_range(2016, datetime.datetime))
Ausgabe:
(datetime.date(2016, 1, 1), datetime.date(2016, 12, 31))
(datetime.datetime(2016, 1, 1, 0, 0), datetime.datetime(2016, 12, 31, 23, 59, 59, 999999))