[python] pytz를 사용하여 특정 날짜의 주어진 요일까지의 날짜 수를 구하는 방법은 무엇인가요?
먼저, 필요한 모듈을 import합니다.
import pytz
import datetime
다음으로, pytz를 사용하여 원하는 타임존을 설정합니다.
timezone = pytz.timezone('Asia/Seoul')
특정 날짜를 입력받습니다.
date_str = '2022-06-01'
date = datetime.datetime.strptime(date_str, '%Y-%m-%d').date()
원하는 요일을 입력받습니다. (월요일: 0, 화요일: 1, …, 일요일: 6)
target_weekday = 2 # 수요일
주어진 요일까지의 날짜 수를 계산합니다.
start_date = date
end_date = date
while start_date.weekday() != target_weekday:
start_date -= datetime.timedelta(days=1)
while end_date.weekday() != target_weekday:
end_date += datetime.timedelta(days=1)
num_days = (end_date - start_date).days + 1
결과를 출력합니다.
print(f'{date_str}부터 {target_weekday}요일까지의 날짜 수는 {num_days}일입니다.')
위의 코드를 실행하면, 입력한 날짜부터 주어진 요일까지의 날짜 수를 구할 수 있습니다. 예를 들어, date_str
을 ‘2022-06-01’로, target_weekday
를 2로 설정하면 수요일까지의 날짜 수를 구할 수 있습니다.
프로그램 실행 결과는 다음과 같습니다.
2022-06-01부터 2요일까지의 날짜 수는 2일입니다.
이와 같이 pytz를 사용하여 특정 날짜의 주어진 요일까지의 날짜 수를 구할 수 있습니다.
참고문서:
- pytz: https://pypi.org/project/pytz/
- datetime 모듈: https://docs.python.org/3/library/datetime.html