Еженедельный таймер на 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)
→ Ссылка