Calendar

Позволяет вычислять значения дат дней недели в заданнном месяце и году. Кроме того есть возможность получить заранее отформатированный строковый илии html вывод. Естественно второй вывод едва-ли где-то применим.

>>> import calendar

>>> c = calendar.TextCalendar(calendar.SUNDAY)
>>> print(c.prmonth(2017, 7))

    October 2021
Su Mo Tu We Th Fr Sa
                1  2
 3  4  5  6  7  8  9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31
>>> c = calendar.HTMLCalendar(calendar.SUNDAY)
>>> print(c.formatmonth(2021, 10))

<table border="0" ...

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

Смотри документацию