본문 바로가기
Development/Python

[Python] 파이썬 UnixTime / DateTime 형식 변경 하기

by 선인장 🌵 2023. 1. 5.
728x90
728x90

파이썬 UnixTime / DateTime 형식 변경 하기

개발을 하다 보면 제공받는 데이터들 중에서 UnixTime(유닉스 타임)으로 처리된 데이터를 받는 경우가 있다.

데이터 혹은 시스템상에서 해당 값으로 표현되거나 저장되는 것은 크게 문제가 없지만 사람이 해당 값을 볼 때는 어떤 시간을 표현하고 있는지 알아보기 매우 어렵다.

그래서 사람이 보기 편한 방식인 DateTime 형식으로 변경하는 방법에 대해서 알아보도록 하자.

[Python] 파이썬 UnixTime / DateTime 형식 변경 하기

먼저 파이썬 Code가 아닌 다른 여러 곳에서 해당 부분에 대해서 변경하는 방법에 대해서 먼저 작성했었던 내용이 있다. 

나중을 위해서 해당 부분들은 참고하도록 하자.

 

[Mac] MacOS에서 Unixtime / Date 형식 변경 하기

MacOS에서 Unixtime / Date 형식 변경 하기 리눅스나 SQL을 통해서 Unixtime 혹은 Date 형식으로 변경하는 방법은 이전에 한번 알아보았다. [Linux] 리눅스 Date 명령어를 통한 Unixtime / Date 형식 확인 및 변경

happylie.tistory.com

 

[MySQL] SQL문을 통한 Unixtime / Date 형식 변경 하기

SQL문을 통한 Unixtime / Date 형식 변경 하기 데이터베이스에서 시간에 대해 설정을 하는 경우 Unixtime(유닉스 타임) 혹은 Date(데이트) 형식으로 많이 사용을 하고 있다. 또한, 특정 소프트웨어(Software)

happylie.tistory.com

 

[Linux] 리눅스 Date 명령어를 통한 Unixtime / Date 형식 확인 및 변경 하기

Date 명령어를 통한 Unixtime / Date 형식 확인 및 변경 하기 데이터베이스(DB)에서 시간에 대해 설정을 하는 경우 Unixtime(유닉스 타임) 혹은 Date(데이트) 형식으로 많이 사용을 하고 있다. 또한, 특정 소

happylie.tistory.com

728x90

1. UnixTime 형식에서 DateTime 형식으로 변경하기

변경을 하기 위한 파이썬 코드를 작성하기 위해서는 별다른 모듈을 설치할 필요가 없다. 

파이썬에서 기본적으로 제공하고 있는 datetime 모듈을 이용하여 변경을 해보도록 하자.

# Python Example Code

# -*- coding: utf-8 -*-
import datetime


def unix2date(unix_time):
    """
    Unix to Date
    :param unix_time: Unix Time
    :return:
    """
    date_time = datetime.datetime.fromtimestamp(int(unix_time))
    return date_time


if __name__ == "__main__":
    unix_time = 1672912273
    print(unix2date(unix_time))
    


### OUTPUT ###
2023-01-05 18:51:13

확인된 UnixTime 값을 넣으면 DateTime 형식으로 변경하여 출력되는 것을 확인할 수 있다. 

728x90

2. DateTime 형식에서 UnixTime 형식으로 변경하기

그럼 이번에는 우리가 많이 사용하는 DateTime 형식을 UnixTime 형식으로 변경하는 파이썬 코드를 작성해 보도록 하자.

# Python Example Code

# -*- coding: utf-8 -*-
import datetime


def date2unix(date_time):
    """
    Date to Unix
    :param date_time: Date Time
    :return:
    """
    if not isinstance(date_time, datetime.date):
        date_time = datetime.datetime.now()
    unix_time = datetime.datetime.timestamp(date_time) * 1000
    return int(str(unix_time)[0:10])


if __name__ == "__main__":
	print(datetime.datetime.now())
    print(date2unix(datetime.datetime.now()))



### OUTPUT ###
2023-01-05 18:56:49.085827
1672912609

이처럼 현재 DateTime을 넣으면 UnixTime 형식으로 변경하여 출력되는 것을 확인할 수 있다. 

3. 예제 Code

이번에는 자주 사용하는 UnixTime / DateTime 형식을 변경하는 방법에 대해서 알아보았다. 

위에 나온 예제 파일은 Github에 올려놓았다. 

해당 내용에 대해서 문제가 있거나 궁금한 내용이 있다면 Github Issus 혹은 댓글로 남겨주면 답변하도록 하겠다. 

 

GitHub - happylie/python-example-code: Python Example Code

Python Example Code. Contribute to happylie/python-example-code development by creating an account on GitHub.

github.com

728x90
728x90


🌵댓글

 

loading