[python] pytz를 사용하여 특정 시간대와 지정된 날짜 간의 해당 시간 변환하기

파이썬에서 날짜와 시간을 다루는 과정에서 특정 시간대와 지정된 날짜 간의 시간 변환이 필요한 경우가 있을 수 있습니다. 이러한 경우, pytz 라이브러리를 사용하여 손쉽게 시간 변환을 수행할 수 있습니다.

pytz란?

pytz는 파이썬에서 시간대(Datetime timezone)를 다루기 위한 패키지입니다. pytz를 사용하면 파이썬에서 시간대와 관련된 작업을 수행할 수 있으며, 세계 각 지역의 시간을 간단하게 변환할 수 있습니다.

필요한 모듈 설치하기

먼저, pytz 모듈을 설치해야 합니다. 아래의 명령을 사용하여 설치할 수 있습니다.

pip install pytz

특정 시간대와 날짜 간의 시간 변환하기

다음은 pytz를 사용하여 특정 시간대와 지정된 날짜 간의 해당 시간 변환하는 방법입니다.

import pytz
from datetime import datetime

# 특정 날짜와 시간 생성
date = datetime(2022, 1, 1, 10, 0, 0)

# 시간대 객체 생성
timezone = pytz.timezone('Asia/Seoul')

# 특정 시간대로 변환하기
localized_date = timezone.localize(date)

# 다른 시간대로 변환하기
new_timezone = pytz.timezone('America/New_York')
converted_date = localized_date.astimezone(new_timezone)

# 변환된 시간 출력
print(converted_date)

위 코드에서는 datetime 객체를 생성하고, 이를 pytz를 사용하여 특정 시간대로 변환하는 과정을 보여줍니다.

결과 확인하기

위 예제를 실행하면, 2022년 1월 1일 10시에 대한 datetime 객체가 ‘Asia/Seoul’ 시간대로 변환되고, 이를 ‘America/New_York’ 시간대로 다시 변환한 결과를 출력합니다.

2021-12-31 20:00:00-05:00

결과는 현재 시스템의 시간대에 따라 다를 수 있습니다.

참고 자료