У меня проблема с кодом. У меня есть список дат, и я хочу, чтобы каждая дата, находящаяся в следующих 10 днях в этом списке, добавлялась в другой список. Но мой код работает не так, как я ожидал.
Код:
Код: Выделить всё
"""
Logic to sort into dates in the next 10 days
-> Creates timedelta with 10 days, future date
-> Checksif there is an date in the next days, which is a public holiday
"""
list_upcoming_raw = []
ten_days = timedelta(days=10)
future_date = datetime.datetime.now() + ten_days
today = datetime.datetime.now()
for i in data_list:
date = datetime.datetime.strptime(i, '%y%m%d')
if date = today:
list_upcoming_raw.append(date.date())
list_upcoming_raw.sort()
start_date = None
end_date = None
list_upcoming = []
for date in list_upcoming_raw:
if end_date is None or date == end_date + timedelta(days=1):
end_date = date
else:
if start_date is not None:
list_upcoming.append(f"{start_date.strftime('%d.%m.%Y')}")
start_date = date
end_date = date
if start_date is not None:
list_upcoming.append(f"{start_date.strftime('%d.%m.%Y')}-{end_date.strftime('%d.%m.%Y')}")
Код: Выделить всё
231002
231003
231004
231005
231006
231009
231010
231011
231012
231013
231030
231031
240223
240328
240329
240401
240402
240403
240404
240405
240501
240508
240509
240510
240520
240521
240620
240621
240624
240625
240626
240312
240313
240314
240315
Источник: https://stackoverflow.com/questions/781 ... ays-python