[python] 특정 날짜와 시간을 기준으로 한 주의 첫날과 마지막날의 특정 시간 구하기

만약 Python을 사용하여 주의 첫날과 마지막날의 특정 시간을 구하고 싶다면, datetime 모듈을 사용하여 쉽게 해결할 수 있습니다.

주의 첫날을 월요일로 설정하고, 9시와 30분으로 특정 시간을 지정할 경우 다음과 같이 코드를 작성할 수 있습니다:

import datetime

def get_start_and_end_of_week(date):
    start = date - datetime.timedelta(days=date.weekday())
    end = start + datetime.timedelta(days=6)
    start = start.replace(hour=9, minute=30)
    end = end.replace(hour=17, minute=0)
    return start, end

이 코드에서 date는 기준이 되는 날짜를 나타내며, get_start_and_end_of_week 함수는 해당 주의 첫날과 마지막날을 반환합니다.

또한, 이 코드는 월요일을 시작으로 하는 주를 기준으로 하지만, 이를 변경하려면 datetime.timedelta() 메서드를 수정하여 원하는 레이블을 선택하면 됩니다.

이제, 다음은 이 코드를 사용한 예제입니다:

today = datetime.datetime.today()
start_of_week, end_of_week = get_start_and_end_of_week(today)
print(f"Start of the week: {start_of_week}")
print(f"End of the week: {end_of_week}")

이 예제를 실행하면, 현재 주의 첫날부터 마지막날까지의 특정 시간을 포함한 결과를 출력할 것입니다.