[파이썬] 날짜와 시간의 시간대 간 변환

파이썬은 datetime 모듈을 제공하여 날짜와 시간을 처리하는 기능을 제공합니다. 이 모듈을 사용하여 날짜와 시간의 시간대 간 변환을 쉽게 할 수 있습니다.

1. 날짜와 시간 객체 생성하기

날짜와 시간을 처리하기 위해 datetime 모듈의 datetime 클래스를 사용합니다. 우선 해당 모듈을 임포트한 후에 날짜와 시간 객체를 생성할 수 있습니다.

from datetime import datetime

# 현재 날짜와 시간 객체 생성
now = datetime.now()

# 특정 날짜와 시간 객체 생성
date = datetime(2022, 5, 1, 12, 30, 0)

2. 시간대 UTC로 변환하기

시간대는 지역마다 다르게 설정되어 있습니다. 만약 코드를 작성하는 지역의 시간대가 UTC가 아닌 경우, 시간대를 UTC로 변환해야 합니다. 이를 위해 pytz 라이브러리를 사용합니다.

import pytz

# UTC로 변환하기
utc_date = date.astimezone(pytz.utc)

3. 시간대 변경하기

시간대를 변경하려면 pytz 라이브러리를 사용하여 원하는 시간대의 객체를 생성한 후, 원래 날짜와 시간 객체를 해당 시간대로 변경합니다.

import pytz

# 시간대 객체 생성
tokyo_tz = pytz.timezone("Asia/Tokyo")

# 시간대 변경
tokyo_time = date.astimezone(tokyo_tz)

4. 날짜와 시간 형식 변환하기

다른 시스템과의 통신이나 데이터 저장을 위해 날짜와 시간을 특정 형식으로 변환해야 할 때가 있습니다. 이를 위해 strftime 메서드를 사용합니다.

# 특정 형식으로 변환 (2022년 5월 1일 12시 30분 0초)
formatted_date = date.strftime("%Y년 %m월 %d일 %H시 %M분 %S초")

5. 문자열로부터 날짜와 시간 객체 생성하기

문자열로 표시된 날짜와 시간을 객체로 변환해야 할 때가 있습니다. 이를 위해 strptime 메서드를 사용합니다.

# 문자열로부터 객체 생성
date_str = "2022-05-01 12:30:00"
parsed_date = datetime.strptime(date_str, "%Y-%m-%d %H:%M:%S")

날짜와 시간의 시간대 간 변환은 파이썬의 datetime 모듈과 pytz 라이브러리를 이용하여 간단하게 처리할 수 있습니다. 위의 예제 코드를 참고하여 날짜와 시간 처리에 유용한 기능을 활용해 보세요.