[python] pytz를 사용하여 다른 시간대로 시간을 변환하는 방법은 무엇인가요?

pytz는 Python에서 시간대(timezone) 관련 작업을 수행하는데 사용되는 라이브러리입니다. 다른 시간대로 시간을 변환하는 방법은 다음과 같습니다.

먼저, pytz를 설치합니다. 터미널 또는 명령 프롬프트에서 다음 명령을 실행하여 pytz를 설치합니다.

pip install pytz

시간을 변환하고 싶은 datetime 객체를 생성합니다.

from datetime import datetime
import pytz

# 현재 시간을 생성합니다.
now = datetime.now()

# 시간대를 지정하지 않은 UTC 시간으로 생성합니다.
utc_now = datetime.now(pytz.utc)

다른 시간대로 시간을 변환하기 위해 datetime 객체에 astimezone() 메소드를 사용합니다. 변환하고자 하는 시간대의 timezone 객체를 인자로 전달합니다.

# 변환하고자 하는 시간대의 `timezone` 객체 생성
tz = pytz.timezone('Asia/Seoul')

# 현재 시간을 변환합니다.
seoul_now = now.astimezone(tz)

변환된 시간을 출력하거나 다른 작업에 활용할 수 있습니다.

# 변환된 시간을 출력합니다.
print(seoul_now)

# 변환된 시간을 다른 형식으로 변환하여 출력할 수도 있습니다.
formatted_time = seoul_now.strftime("%Y-%m-%d %H:%M:%S")
print(formatted_time)

위의 예제에서는 Asia/Seoul 시간대로 현재 시간을 변환하는 방법을 보여주었습니다. pytz.timezone() 메소드를 사용하여 원하는 시간대의 timezone 객체를 생성하고, datetime 객체에 astimezone() 메소드를 호출하여 시간을 변환할 수 있습니다.

참고문서: