[python] pytz를 사용하여 특정 기간 동안의 주말 날짜를 구하는 방법은 무엇인가요?
import pytz
from datetime import datetime, timedelta
# 시작 날짜와 종료 날짜 설정
start_date = datetime(2022, 1, 1)
end_date = datetime(2022, 1, 31)
# pytz를 사용하여 시간대 설정
timezone = pytz.timezone('Asia/Seoul')
# 특정 기간 동안의 주말 날짜 구하기
weekend_dates = []
current_date = start_date
while current_date <= end_date:
# 현재 날짜가 주말인지 확인
if current_date.weekday() >= 5: # 토요일(5)과 일요일(6)을 의미함
weekend_dates.append(current_date)
current_date += timedelta(days=1)
# 주말 날짜 출력
for date in weekend_dates:
print(date.astimezone(timezone).strftime('%Y-%m-%d'))
이 코드를 실행하면 start_date
부터 end_date
까지의 주말 날짜를 구할 수 있습니다. 이 때 pytz를 사용하여 특정 시간대로 변환하여 출력할 수도 있습니다. 위의 예제 코드는 Asia/Seoul 시간대로 설정했기 때문에, 결과도 해당 시간대의 날짜와 시간으로 출력됩니다.
참고 문서:
- pytz 문서: https://pythonhosted.org/pytz/
- datetime 모듈 문서: https://docs.python.org/3/library/datetime.html