프로그래밍/Python

[Python] 날짜 문자열을 timestamp로 변환하기

채윤아빠 2022. 5. 13. 23:31
728x90
반응형

개요

파이썬에서 날짜 문자열을 timestamp 숫자로 변환하는 방법을 정리해 둡니다.


timestamp 형식으로 변환하는 방법

날짜 문자열을 바로 timestamp 숫자 자료로 변환하는 기본 함수는 없습니다.
datetime.timestamp() 함수가 datetime 형을 timestamp 숫자 자료형(double)으로 변환하여 줍니다.

따라서, 날짜 문자열을 먼저 datetime 형으로 변환한 후, datetime.timestamp() 함수를 이용하여 timestamp 숫자 자료형(double)으로 변환하면 됩니다.

>>> from datetime import datetime

>>> dt = datetime.strptime('2022-11-10 11:28:07', '%Y-%m-%d %H:%M:%S')
>>> dt = datetime(2022, 11, 10, 11, 28, 7)
>>> dt
datetime.datetime(2022, 11, 10, 11, 28, 7)
>>> datetime.timestamp(dt)
1668047287.0

또 다른 한 방법은 time.mktime() 함수를 이용하는 방법입니다.

>>> from time import mktime

>>> dt.timetuple()
time.struct_time(tm_year=2022, tm_mon=11, tm_mday=10, tm_hour=11, tm_min=28, tm_sec=7, tm_wday=3, tm_yday=314, tm_isdst=-1)
>>> mktime(dt.timetuple())
1668047287.0

저는 아무래도 time.mktime() 함수를 이용하는 것보다 datetime.timestamp()를 이용하는 것이 더 간단해 보이네요 ^^


참고자료