Реализуйте расчет дня недели для дня рождения.
Пользователь вводит месяц и день, а получает файл, содержащий дни недели, на которые приходится его день рождения
в ближайшие 20 лет

Ответы

Ответ дал: wherethefux
2

import datetime

import locale

# Получаем дату рождения от пользователя.

month = int(input("Введите месяц дня рождения (1-12): "))

day = int(input("Введите день дня рождения (1-31): "))

# Устанавливаем русскую локализацию для вывода дня недели.

locale.setlocale(locale.LC_ALL, "ru_RU.UTF-8")

# Открываем файл birthday.txt для записи.

outfile = open("birthday.txt", "w")

# Выводим заголовок в файл.

print("Отчет о днях рождения", file=outfile)

print("---------------", file=outfile)

# Выводим дни рождения в файл.

for year in range(datetime.date.today().year, datetime.date.today().year + 20):

   date = datetime.date(year, month, day)

   # Форматируем дату, указывая опцию %A, чтобы получить день недели.

   formatted_date = date.strftime("%A").capitalize()

   print(formatted_date, file=outfile)

# Закрываем файл.

outfile.close()

print("Отчет о днях рождения напечатан в birthday.txt")

Вас заинтересует