[python] pytz를 사용하여 특정 기간이 주어진 시간 범위에 속하는지 확인하는 방법은 무엇인가요?
import pytz
from datetime import datetime
def is_within_time_range(start_time, end_time, target_time):
timezone = pytz.timezone('Asia/Seoul') # 원하는 타임존을 선택합니다
start_time = timezone.localize(start_time)
end_time = timezone.localize(end_time)
target_time = timezone.localize(target_time)
if start_time <= target_time <= end_time:
return True
else:
return False
# 테스트를 위한 시간 범위와 검사할 타임스탬프
start_time = datetime(2022, 1, 1, 0, 0, 0)
end_time = datetime(2022, 12, 31, 23, 59, 59)
target_time = datetime(2022, 6, 1, 12, 0, 0)
# 함수 호출
result = is_within_time_range(start_time, end_time, target_time)
print(result) # True 출력
위의 코드에서는 pytz
모듈을 사용하여 타임존을 설정하고, localize()
함수를 사용하여 날짜와 시간을 해당 타임존으로 변환합니다. 그 후에는 start_time
과 end_time
사이에 target_time
이 있는지 확인하기 위해 비교 연산을 사용합니다.
참고 자료: