본문 바로가기
프로그래밍언어/파이썬[중급]

[파이썬][중급] Chapter36. calendar 모듈과 날짜 계산 응용

by about_IT 2025. 5. 24.
728x90

calendar 모듈은 월별 달력 출력, 요일 계산, 윤년 판단 등 날짜 관련 작업을 도와주는 유틸리티를 제공합니다. datetime과 함께 사용하면 날짜 기반 기능을 보다 유연하게 구현할 수 있습니다.

 

● 달력 출력

import calendar

print(calendar.month(2025, 5))

월 단위 달력을 출력하며, calendar.prmonth(), calendar.calendar() 등도 유사하게 사용됩니다.

 

● 요일 확인

# 0 = 월요일, 6 = 일요일
weekday = calendar.weekday(2025, 5, 18)
print(weekday)  # 예: 6 (일요일)

특정 날짜의 요일을 숫자로 반환하며, calendar.day_name을 활용하면 문자열로도 변환할 수 있습니다.

print(calendar.day_name[weekday])  # Sunday

 

● 윤년 판단

print(calendar.isleap(2024))  # True
print(calendar.isleap(2025))  # False

isleap() 함수는 윤년 여부를 판별합니다.

 

● 해당 월의 일 수 구하기

_, days = calendar.monthrange(2025, 2)
print(days)  # 28

monthrange()는 그 달의 시작 요일(0~6)과 총 일 수를 반환합니다.

 

● 월별 주차 구성

for week in calendar.monthcalendar(2025, 5):
    print(week)

monthcalendar()는 월을 주 단위로 구성한 리스트를 반환합니다. 각 주는 7개의 요소(일~토)로 구성되며, 날짜가 없는 칸은 0으로 채워집니다.

 

● 마무리

calendar 모듈은 일정 관리, 캘린더 UI, 반복 예약 등의 기능을 구현할 때 유용합니다. datetime과 함께 조합하면 더욱 강력한 날짜 처리를 구현할 수 있습니다.

728x90