Python Как узнать дату текущего понедельника

Рейтинг: 0Ответов: 1Опубликовано: 25.04.2023

Мне нужно узнать дату текущего понедельника и субботы. Именно на этой неделе. Вот мой код но что-то он не работает как надо

def getDateFromDayOfWeek(dayOfWeek):
    week_days = ["monday", "tuesday", "wednesday",
                 "thursday", "friday", "saturday", "sunday"]
    today = datetime.datetime.today().weekday()
    requiredDay = week_days.index(dayOfWeek)
    if today>requiredDay:
          noOfDays=(today-1)
    else:  
          noOfDays = requiredDay-today
    requiredDate = datetime.datetime.today()+datetime.timedelta(days=noOfDays)
    return requiredDate
start_date = getDateFromDayOfWeek('monday').strftime("%d.%m.%Y")
end_date = getDateFromDayOfWeek('saturday').strftime("%d.%m.%Y")

Ответы

▲ 2Принят
from datetime import datetime, timedelta

def get_dates_of_current_week():
    now = datetime.now()
    monday = now - timedelta(days=now.weekday())
    return [monday + timedelta(days=day) for day in range(7)]

dates = get_dates_of_current_week()

print((dates[0], dates[5]))

Этот метод возвращает даты за текущую неделю, на всякий случай, по индексу 0 и 5 можешь получить ПН и СБ