Еженедельный таймер на Python
Мне нужно написать программу, которая будет считать количество времени до определенного дня, я уже написала скрипт, который это делает, но суть в том, что мне нужно сделать отсчет времени до определенного дня недели, а не даты. Например: "До понедельника осталось 3 дня 2 часа 10 минут 24 секунд". Подскажите пожалуйста метод или библиотеку, которая помогла бы мне помочь в этом.
Ответы (1 шт):
Библиотеку вы уже нашли. Надо было почитать её описание (найти поиском, например, вот, что нашел я: https://all-python.ru/osnovy/modul-datetime.html), а дальше продумать в голове алгоритм, возможно, посчитав на бумажке в конкретных примерах. Затем перенести в код. Пример получившегося кода - ниже.
import datetime
target_day = int(input ("введите номер дня недели, начиная с понедельника (ПН - 1, ВС - 7): "))
now = datetime.datetime.now() # текущие дата и время
day_today = datetime.datetime.isoweekday(now) # текущий день - его номер
# Сколько ждать осталось
days_to_wait = (target_day - day_today + 6) % 7
hours_to_wait= 24 - now.hour - 1
munutes_to_wait = 60 - now.minute - 1
seconds_to_wait = 60 - now.second - 1
print ("Осталось дней:", days_to_wait, "часов:", hours_to_wait, "минут:", munutes_to_wait, "секунд:", seconds_to_wait)