Введение
В Python модуль datetime предоставляет классы для работы с датами и временем. Одна из распространенных задач - создать список дат между двумя заданными датами. В этом испытании вы создадите функцию, которая принимает две даты в качестве входных данных и возвращает список всех дат между ними.
Диапазон дат
Напишите функцию на Python под названием daterange(start, end), которая принимает два объекта datetime.date в качестве аргументов и возвращает список всех дат между ними. Список должен включать начальную дату, но не конечную.
Для решения этой проблемы вы можете следовать следующим шагам:
- Используйте
datetime.timedelta.days, чтобы получить количество дней междуstartиend. - Используйте
int(), чтобы преобразовать результат в целое число, иrange(), чтобы перебрать каждый день. - Используйте списочное выражение и
datetime.timedelta, чтобы создать список объектовdatetime.date.
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)]
Резюме
В этом испытании вы узнали, как создать список дат между двумя заданными датами с использованием модуля datetime в Python. Вы можете использовать эту функцию для решения различных задач, таких как вычисление количества дней между двумя датами или генерация списка дат для заданного месяца или года.