Python 3.12+calendarпонятие
calendar.Day
дни и месяцы
Перечисление дней недели (IntEnum) от MONDAY = 0 до SUNDAY = 6; его члены доступны и как calendar.MONDAY…calendar.SUNDAY.
Синтаксис
calendar.Day.MONDAY # … calendar.Day.SUNDAY
Нумерация с нуля и с понедельника: воскресенье — 6, тогда как date.isoweekday() считает понедельник единицей, а воскресенье — семёркой. Константы calendar.MONDAY и др. — это те же объекты, что Day.MONDAY (проверка is даёт True), а weekday() и monthrange() с 3.12 возвращают члены Day. Это IntEnum, поэтому сравнение с числом и индексирование работают как раньше; на 3.11 Day нет, а MONDAY — просто 0.
Примеры
import calendar
d = calendar.weekday(2024, 10, 7)
print(d == calendar.Day.MONDAY, d.name) # → True MONDAY
print(calendar.Day.SUNDAY.value) # → 6
print(calendar.MONDAY is calendar.Day.MONDAY) # → True
import calendar, datetime
day = datetime.date(2024, 10, 13)
print(day.weekday(), day.isoweekday()) # → 6 7 — воскресенье
См. также
Открыть в полном глоссарииdocs.python.orgСообщить о неточности