Сообщить об ошибке.

Класс TextCalendar() модуля calendar в Python

Печатать календарь на любой месяц или год

Синтаксис:

import calendar

cl = calendar.TextCalendar(firstweekday=0)

Параметры:

  • firstweekday=0 - задает первый день недели.

Возвращаемое значение:

Описание:

Класс TextCalendar() модуля calendar можно использовать для создания простых текстовых календарей.

Экземпляры TextCalendar() имеют следующие методы:

  • Метод cl.formatmonth() форматирует календарь на месяц,
  • Метод cl.prmonth() печатает календарь на месяц,
  • Метод cl.formatyear() форматирует календарь на год,
  • Метод cl.pryear() печатает календарь на год,

cl.formatmonth(theyear, themonth, w=0, l=0):

Метод cl.formatmonth() возвращает календарь на месяц themonth, года theyear в виде многострочной строки.

Аргумент w, он определяет ширину столбцов даты, которые автоматически центрированы. Если дано значениеАргумент l указывает количество строк, которые будут использоваться между неделями.

Зависит от первого дня недели, как указано в конструкторе или установлено методом cl.setfirstweekday().

>>> import calendar
>>> cl = calendar.TextCalendar(firstweekday=0)
# если вывод этого метода перенаправить 
# функцией open() в файл то получим 
# отформатированный календарь за месяц
# в текстовом файле
>>> cl.formatmonth(2020, 5, 3, 2)
# '          May 2020\n\n
# Mon Tue Wed Thu Fri Sat Sun\n\n
#                   1   2   3\n\n
#   4   5   6   7   8   9  10\n\n
#  11  12  13  14  15  16  17\n\n
#  18  19  20  21  22  23  24\n\n
#  25  26  27  28  29  30  31\n\n'

cl.prmonth(theyear, themonth, w=0, l=0):

Метод cl.prmonth() печатает календарь на месяц, который возвратит метод calendar.formatmonth().

>>> import calendar
>>> cl = calendar.TextCalendar(firstweekday=0)
# печатает календарь за год в терминале
>>> cl.prmonth(2020, 5, 3, 2)
#           May 2020
# Mon Tue Wed Thu Fri Sat Sun
# 
#                   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

cl.formatyear(theyear, w=2, l=1, c=6, m=3):

Метод cl.formatyear() возвращает календарь из m столбцов на весь год theyear в виде многострочной строки.

Необязательные параметрыw - ширины столбца датыl - количество строк между неделямиc - количества пробелов между столбцами месяца

Зависит от первого дня недели, как указано в конструкторе или установлено методом cl.setfirstweekday().

Самый ранний год, для которого может быть создан календарь, зависит от платформы.

>>> import calendar
>>> cl = calendar.TextCalendar(firstweekday=0)
# если вывод этого метода перенаправить 
# функцией open() в файл то получим 
# отформатированный календарь за год
# в текстовом файле
>>> cl.formatyear(2021)
# '                                  2021\n\n
#       January                   February                   March\n
#
# и так далее
...
...
# весь вывод показать не реально

cl.pryear(theyear, w=2, l=1, c=6, m=3):

Метод cl.pryear() печатает календарь на месяц, который возвратит метод calendar.formatyear().

>>> import calendar
>>> cl = calendar.TextCalendar(firstweekday=0)
# печатает календарь за год в терминале
>>> cl.pryear(2021)
#                                  2021
#      January                   February                   March
#Mo Tu We Th Fr Sa Su      Mo Tu We Th Fr Sa Su      Mo Tu We Th Fr Sa Su
#             1  2  3       1  2  3  4  5  6  7       1  2  3  4  5  6  7
# 4  5  6  7  8  9 10       8  9 10 11 12 13 14       8  9 10 11 12 13 14
#11 12 13 14 15 16 17      15 16 17 18 19 20 21      15 16 17 18 19 20 21
#18 19 20 21 22 23 24      22 23 24 25 26 27 28      22 23 24 25 26 27 28
#25 26 27 28 29 30 31                                29 30 31
#
#       April                      May                       June
# и так далее
...
...
# весь вывод показать не реально