SeouliteLab

[Python/파이썬] 특정 월의 시작 날짜, 마지막 날짜 얻기 본문

프로그래밍

[Python/파이썬] 특정 월의 시작 날짜, 마지막 날짜 얻기

Seoulite Lab 2024. 3. 4. 08:38

Python을 사용하여 특정 월의 시작 날짜와 마지막 날짜를 얻는 방법에 대해 알아보겠습니다. 특정 월의 시작 날짜는 그 달의 첫 번째 날이고, 마지막 날짜는 그 달의 마지막 날입니다. 아래 예제를 통해 각각의 방법을 살펴보겠습니다.

1. calendar 모듈 사용

Python의 calendar 모듈을 사용하여 특정 월의 시작 날짜와 마지막 날짜를 얻을 수 있습니다. 먼저, calendar.monthrange(year, month) 함수를 사용하여 특정 월의 첫 번째 날과 마지막 날의 요일과 날짜 수를 얻습니다. 그런 다음, 이 정보를 사용하여 시작 날짜와 마지막 날짜를 계산합니다.

import calendar

def get_month_dates(year, month):
    # 특정 월의 첫 번째 날과 마지막 날의 요일과 날짜 수 구하기
    first_day, last_day = calendar.monthrange(year, month)
    # 시작 날짜는 첫 번째 날
    start_date = 1
    # 마지막 날짜는 마지막 날
    end_date = last_day
    return start_date, end_date

# 특정 연도와 월 지정
year = 2024
month = 3
start_date, end_date = get_month_dates(year, month)
print(f"Start Date: {year}-{month}-{start_date}")
print(f"End Date: {year}-{month}-{end_date}")

2. datetime 모듈 사용

datetime 모듈을 사용하여 특정 월의 시작 날짜와 마지막 날짜를 구할 수도 있습니다. 먼저, 특정 월의 첫 번째 날과 마지막 날을 생성하고, 이를 사용하여 시작 날짜와 마지막 날짜를 얻습니다.

from datetime import datetime, timedelta

def get_month_dates(year, month):
    # 첫 번째 날 생성
    first_day = datetime(year, month, 1)
    # 마지막 날 생성
    if month == 12:
        last_day = datetime(year + 1, 1, 1) - timedelta(days=1)
    else:
        last_day = datetime(year, month + 1, 1) - timedelta(days=1)
    return first_day, last_day

# 특정 연도와 월 지정
year = 2024
month = 3
start_date, end_date = get_month_dates(year, month)
print(f"Start Date: {start_date.strftime('%Y-%m-%d')}")
print(f"End Date: {end_date.strftime('%Y-%m-%d')}")