[python] pytz를 사용하여 특정 시간대의 일출 및 일몰 시간을 구하는 방법은 무엇인가요?

파이썬에서 특정 시간대의 일출 및 일몰 시간을 구하려면 pytz 모듈을 사용할 수 있습니다. pytz는 파이썬에서 시간대 정보를 다루는 데 도움이 되는 모듈입니다.

다음은 pytz를 사용하여 특정 시간대의 일출 및 일몰 시간을 구하는 예제 코드입니다.

import pytz
from datetime import datetime
from astral.sun import sun

# 원하는 지역의 시간대를 설정합니다.
timezone_name = "Asia/Seoul" # 한국 표준시

# 현재 날짜와 시간을 얻습니다.
now = datetime.now()

# pytz 모듈을 사용하여 원하는 지역의 시간대 정보를 가져옵니다.
timezone = pytz.timezone(timezone_name)

# 현재 시간을 원하는 시간대로 변환합니다.
now = timezone.localize(now)

# astral 패키지를 사용하여 일출 및 일몰 시간을 얻습니다.
s = sun(observer={"timezone": timezone_name})
sunrise_time = s.sunrise(timezone=timezone, date=now)
sunset_time = s.sunset(timezone=timezone, date=now)

# 일출 및 일몰 시간을 출력합니다.
print("일출 시간:", sunrise_time)
print("일몰 시간:", sunset_time)

이 코드는 pytz 모듈과 astral 패키지를 사용하여 현재 시간을 특정 시간대로 변환한 다음, astral 패키지의 sun 클래스를 사용하여 일출 및 일몰 시간을 계산합니다. 이 때, observer 매개변수에는 지역의 시간대를 지정해야 합니다.

위 코드를 실행하면 선택한 지역의 현재 일출 및 일몰 시간을 출력할 수 있습니다. 예를 들어, Asia/Seoul을 사용하면 한국 표준시에 따른 일출 및 일몰 시간을 구할 수 있습니다.

참고 문서: