Files
30-seconds-of-code/snippets/daterange.md
Isabelle Viktoria Maciohsek 6169dda836 Fix typos
2021-01-07 23:30:28 +02:00

708 B

title, tags
title tags
daterange date,intermediate

Creates a list of dates between start (inclusive) and end (not inclusive).

  • Use datetime.timedelta.days to get the days between start and end.
  • Use int() to convert the result to an integer and range() to iterate over each day.
  • Use a list comprehension and datetime.timedelta() to create a list of datetime.date objects.
from datetime import timedelta, date

def daterange(start, end):
  return [start + timedelta(n) for n in range(int((end - start).days))]
from datetime import date

daterange(date(2020, 10, 1), date(2020, 10, 5))
# [date(2020, 10, 1), date(2020, 10, 2), date(2020, 10, 3), date(2020, 10, 4)]