파이썬에서 UTC 시간으로 변환하는 방법

목차

파이썬에서 UTC 시간으로 변환하기

최근에 파이썬으로 시간을 변환할 일이 생겼다. 현재 파이썬은 윈도우즈와 리눅스 환경 둘다 사용하고 있는데 리눅스에서 UTC 시간으로 체크를 해야 하는 상황이 발생했다.

현재 내가 사용하는 리눅스에서는 기본으로 KST(한국 표준시) 로 설정이 되어 있다. 따라서 파이썬의 시간 함수인 “datetime” 을 사용하더라도 기본적으로는 KST 를 기본으로 시간이 체크되고 계산이 된다.

일단 datetime 모듈로 시간을 얻어오려면 아래와 같다.

import datetime

r = datetime.datetime.today()

print(r)

위 소스의 결과를 확인해 보면 KST 즉 한국 표준시로 출력이 될 것이다.

UTC는 한국 표준시보다 대략 9시간이 느리다. 그래서 계산을 해줘야 되나? 라고 생각할지 모르겠지만 datetime 모듈은 UTC 시간을 손쉽게 출력할 수 있게 해준다.

import datetime

r = datetime.datetime.utcnow()

print(r)

datetime 클래스에 utcnow( ) 라는 함수를 호출하면 현재 UTC 시간이 바로 출력된다.

현재 KST 시간으로 15시 인데 UTC 시간으로는 9시간 느린 오전 6시가 된다. 정상적으로 UTC 가 즉시 출력되는 것을 알 수 있다.

위 소스에서와 같이 utcnow( ) 사용하여 저장한 r 변수의 여러 클래스 함수들을 호출하면 시간 계산 및 시간값을 가공하여 출력이 가능하다. 예를 들면 date( ) 함수를 사용하면 UTC 시간으로 금일 날짜가 출력된다.

파이썬으로 UTC 변환은 의외로 꽤 간단하다.

테스트 환경은 파이썬 3.8.0, OS는 리눅스에서 진행하였습니다.

'코드도사(codedosa.com)'에는 쿠팡파트너스 등의 제휴링크가 포함되어 있으며 수수료를 제공받을 수 있습니다.