Python: Given a Date and Weekday find the date of the next occurrence of a given weekday

Это немного трудно объяснить, поэтому я извиняюсь, если это не имеет большого смысла.

У меня есть программа, в которой я составляю расписание. Одной из настроек является еженедельное выполнение задачи в определенные дни. Например, еженедельно в понедельник, среду и пятницу.

Рассмотрим пример, в котором текущая задача запланирована на 1/2/2012, что является понедельником, у меня уже есть куча кода, работающего до такой степени, что я знаю, что следующий запуск задачи должен быть в среду, следующую за 1/2/2012. Все, что мне нужно сделать, это вычислить фактическую дату этой среды (1/4/2012).

На самом деле у меня есть день недели в виде соответствующего целого числа из date.weekday(), поэтому в данном случае у меня есть 2, что означает среду.

Как лучше всего поступить с подобным? Мне кажется, что должно быть довольно простое решение, но оно не приходит на ум. Я думал использовать объект календаря для поиска нужного дня недели, но это кажется излишеством.

9
задан Jon 3 January 2012 в 04:52
поделиться