Курс 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"
- None в Python: использование и особенности
- Основы слова
- Управление виртуальными окружениями в Python
- Поиск индексов подстроки
- Работа с байтовыми строками в Python
- Шаблоны Flask: условия и циклы
- Сумма элементов списка
- Измерение времени выполнения кода в Python
- Умножение строк и списков
- Функция rsplit() в Python
- Лямбда-функции в Python
- Удаление URL-адресов в Python
- Методы обработки строк в Python
- Создание коллекций из генератора
- Функции all() и any() в Python
- Автоматизация с Python
- Библиотека Chartify: руководство
- Работа со словарями с defaultdict из collections
- Создание словарей с defaultdict()
- Склеивание строк без циклов
- Условное добавление элементов в список
- Преобразование вложенного списка
- Модуль itertools: комбинации и перестановки
- Запуск внешних программ с subprocess
- Кортежи в Python: особенности и преимущества
- Форматирование данных с pprint
- Переопределение унарных операторов
- Codecademy в Telegram
- Python: библиотеки и функции
- Сортировка в Python
- Преобразование range в итератор
- Работа с *args и **kwargs в Python
- Оператор деления для класса Rational
- Получение имени функции с помощью inspect
- Список переменных с %who
- Lambda-функция в Python: использование с map() и sum()
- Тестирование функции сложения
- Описание скриптов в README
- Определение локальных переменных в Python
- Непрерывная проверка в Python
- Цепные операции в Python
- Генераторы в Python
- Циклы for в Python
- Создание циклической ссылки
- Область видимости переменных















