Модуль calendar, Python 3 для початківців та чайників
Модуль calendar дозволяє надрукувати календарик (а також містить деякі інші корисні функції для роботи з календарями).
calendar.Calendar(firstweekday=0) - клас календаря. Перший день - перший день тижня (0 - понеділок, 6 - неділя).
iterweekdays() - ітератор днів тижня, починаючи з firstweekday.
itermonthdates(year, month) - ітератор для місяця month року year. Повертає всі дні цього місяця (як об'єкти datetime.date), а також дні до та після цього місяця до повного тижня.
itermonthdays2(year, month) - як itermonthdates, тільки дні повертаються не як datetime.date об'єкти, а кортежі (номер дня, номер дня тижня).
itermonthdays(year, month) - як itermonthdates, тільки дні повертаються не як datetime.date об'єкти, а номери днів.
monthdatescalendar(year, month) - список тижнів на місяць. Тиждень – список з 7 об'єктів datetime.date.
monthdays2calendar(year, month) - як monthdatescalendar, але об'єкти - кортежі (номер дня, номер дня тижня).
monthdayscalendar(year, month) - як monthdatescalendar, але об'єкти - номери днів.
calendar.TextCalendar(firstweekday=0) - клас для створення текстового календаря.
formatmonth(theyear, themonth, w=0, l=0) - повертає календар на місяць у вигляді рядка, з шириною колонки w і висотою l.
prmonth(theyear, themonth, w=0, l=0) – друкує календар на місяць.
formatyear(theyear, w=2, l=1, c=6, m=3) - повертає календар на рік; з колонок m, шириною дати w, висотою тижня l і кількістю прогалин між місяцями c.
pryear(theyear, w=2, l=1, c=6, m=3) – друкує календар на рік.
calendar.HTMLCalendar(firstweekday=0) - клас для генерації HTML календаря.
formatmonth(theyear, themonth, withyear=True) - календар на місяць у вигляді HTML таблиці. Якщо зроком True, номер року буде включений в заголовок.
formatyear(theyear, width=3) - календар рік у вигляді HTML таблиці. width - кількість місяців у ряду.
formatyearpage(theyear, width=3, css="calendar.css", encoding=None) - календар на рік у вигляді повноцінної HTML сторінки, з підключенням файлу css (який ви можете створити самі), і в кодування encoding.
calendar.LocaleTextCalendar(firstweekday=0, locale=None) - дозволяє створити текстовий календар із назвами рідною мовою.
calendar.LocaleHTMLCalendar(firstweekday=0, locale=None) - дозволяє створити HTML календар із назвами рідною мовою.
Наприклад, ось такий календарик вийшов у мене: