Computer >> 컴퓨터 >  >> 프로그래밍 >> Python

Python calendar 모듈 완벽 정리: 주요 함수와 활용 방법

파이썬(Python)의 calendar 모듈은 달력과 관련된 다양한 기능을 제공하는 표준 라이브러리입니다. 이 모듈을 활용하면 특정 연도나 월에 해당하는 텍스트 형태의 달력을 손쉽게 출력할 수 있으며, 윤년 판별, 요일 계산 등 날짜 관련 작업도 간편하게 처리할 수 있습니다.

calendar 모듈의 기본 설정

calendar 모듈은 기본적으로 월요일을 한 주의 시작으로, 일요일을 마지막 요일로 설정합니다. 만약 이 설정을 변경하고 싶다면 calendar.setfirstweekday() 함수를 호출하여 한 주의 시작 요일을 원하는 대로 지정할 수 있습니다.

아래는 calendar 모듈에서 제공하는 주요 함수들을 정리한 표입니다.

calendar 모듈의 주요 함수 목록

번호함수 및 설명
1calendar.calendar(year, w=2, l=1, c=6)
지정한 연도 전체의 달력을 여러 줄의 문자열로 반환합니다. 달력은 c개의 공백으로 구분된 세 개의 열로 구성되며, w는 각 날짜의 문자 폭, l은 각 주당 줄 수를 의미합니다.
2calendar.firstweekday()
현재 설정된 한 주의 시작 요일을 반환합니다. 모듈을 처음 임포트했을 때의 기본값은 0으로, 월요일을 의미합니다.
3calendar.isleap(year)
지정한 연도가 윤년이면 True를, 그렇지 않으면 False를 반환합니다.
4calendar.leapdays(y1, y2)
y1부터 y2 범위(range(y1, y2)) 내에 포함된 연도들 중 윤년인 해의 총 개수를 반환합니다.
5calendar.month(year, month, w=2, l=1)
지정한 연도와 월의 달력을 여러 줄의 문자열로 반환합니다. 각 주가 한 줄을 차지하며 헤더 두 줄이 추가됩니다. w는 각 날짜의 문자 폭, l은 각 주당 줄 수입니다.
6calendar.monthcalendar(year, month)
정수 리스트들의 리스트를 반환합니다. 각 하위 리스트는 한 주를 나타내며, 해당 월에 속하지 않는 날짜는 0으로, 속하는 날짜는 실제 일자(1 이상)로 표시됩니다.
7calendar.monthrange(year, month)
두 개의 정수를 반환합니다. 첫 번째 값은 해당 월 첫날의 요일 코드(0=월요일 ~ 6=일요일), 두 번째 값은 그 달의 총 일수입니다. 월은 1부터 12까지의 숫자로 지정합니다.
8calendar.prcal(year, w=2, l=1, c=6)
print(calendar.calendar(year, w, l, c))와 동일하게 연간 달력을 직접 출력합니다.
9calendar.prmonth(year, month, w=2, l=1)
print(calendar.month(year, month, w, l))와 동일하게 월간 달력을 직접 출력합니다.
10calendar.setfirstweekday(weekday)
한 주의 시작 요일을 지정한 요일 코드로 설정합니다. 요일 코드는 0(월요일)부터 6(일요일)까지입니다.
11calendar.timegm(tupletime)
time.gmtime()의 역함수입니다. 타임 튜플 형태의 시각 정보를 받아 에포크(epoch, 1970년 1월 1일) 이후 경과한 초 단위의 부동소수점 숫자로 변환하여 반환합니다.
12calendar.weekday(year, month, day)
지정한 날짜의 요일 코드를 반환합니다. 요일 코드는 0(월요일)부터 6(일요일)까지이며, 월은 1(1월)부터 12(12월)까지의 숫자입니다.

마무리

calendar 모듈은 별도의 외부 라이브러리 설치 없이 파이썬 기본 환경에서 바로 사용할 수 있어 매우 편리합니다. 달력 출력이 필요한 CLI 도구, 스케줄러, 날짜 계산 로직 등을 개발할 때 이 모듈의 함수들을 적극적으로 활용해 보시기 바랍니다.