Курс Python → Печать месячного календаря

Для распечатывания ежемесячного календаря в Python можно воспользоваться функцией calendar.monthcalendar(year, month), которая возвращает список списков, представляющих календарь для указанного года и месяца. Каждый внутренний список представляет неделю, а нулевые элементы в неделях, где месяц не начинается или заканчивается, равны 0.


import calendar

def print_month_calendar(year, month):
    cal = calendar.monthcalendar(year, month)
    for week in cal:
        print(week)

Пример кода выше демонстрирует функцию print_month_calendar, которая принимает год и месяц в качестве аргументов, использует функцию calendar.monthcalendar для получения календаря и затем печатает его. Теперь можно вызвать эту функцию с нужным годом и месяцем для вывода календаря на экран.

Для улучшения визуального представления календаря можно добавить форматирование и разделители между неделями. Например, можно использовать символы для обозначения дней недели (Пн, Вт, Ср и т.д.) и добавить горизонтальные линии для разделения недель.


import calendar

def print_month_calendar(year, month):
    cal = calendar.monthcalendar(year, month)
    print("Mo Tu We Th Fr Sa Su")
    print("--------------------")
    for week in cal:
        print(" ".join(str(day) if day != 0 else "  " for day in week))

Этот улучшенный код добавляет строку с днями недели и горизонтальную линию для разделения недель в календаре. Теперь при вызове функции print_month_calendar будет выводиться календарь с днями недели и разделителями для улучшения читаемости.

Твои коллеги будут рады, поделись в

Автор урока

Дмитрий Комаровский
Дмитрий Комаровский

Автоматизация процессов
в КраснодарБанки.ру

Другие уроки курса "Python"

  1. Создание и инициализация объектов
  2. Управление виртуальными средами в Python
  3. Работа со словарями Python
  4. Обновление шаблона base.html
  5. Особенности ключей словаря в Python
  6. Многопоточность в Python
  7. Объединение множеств в Python
  8. PEP-401: оператор
  9. Создание коллекций из генератора
  10. Логирование с Logzero
  11. Метод radd для пользовательских чисел
  12. Отладка в командной строке
  13. Инициализация структур данных
  14. Объединение итераторов
  15. Удаление файлов с shutil.os.remove()
  16. Удаление ключа из словаря
  17. Преобразование символов с помощью map
  18. Сериализация данных в JSON с помощью json.dumps
  19. Область видимости переменных
  20. Хэш-функции в Python
  21. Счетчик в Python: most_common()
  22. Контроль точности вывода чисел
  23. Разделение строки с помощью re.split()
  24. Поиск всех индексов подстроки
  25. Участие в LP стейкинге Waves
  26. Объединение списков с использованием itertools.chain
  27. Работа с CSV файлами
  28. Работа с областями видимости переменных
  29. Проверка памяти объекта
  30. Переопределение метода
  31. Логические операторы в Python
  32. Метод ne для сравнения объектов
  33. Переопределение метода delitem в Python
  34. Оптимизация памяти с __slots__
  35. Управление User-Agent в Python
  36. Работа со списками
  37. Разрешение имен в Python
  38. Преобразование числа в восьмеричную строку
  39. Переопределение метода __rshift__
  40. Подписка на SelectelNews в Twitter
  41. Работа с комбинациями в Python.
  42. Python 3.12: Псевдонимы типов
  43. Преобразование чисел в слова
  44. Оператор деления для класса Rational

Marketello читают маркетологи из крутых компаний