Computer >> 컴퓨터 >  >> 프로그래밍 >> Python

파이썬에서 날짜 문자열을 타임스탬프로 변환하는 방법

파이썬에서 날짜 형식의 문자열을 타임스탬프로 변환해야 하는 경우가 종종 있습니다. 이럴 때는 time 패키지에서 제공하는 mktime 메서드를 활용하면 간단하게 처리할 수 있습니다.

mktime은 구조화된 시간 정보(struct time)를 받아 유닉스 타임스탬프(1970년 1월 1일부터 경과한 초 단위 시간)로 변환해 주는 함수입니다. 아래 예제를 통해 실제 사용 방법을 살펴보겠습니다.

예제 코드

import time
import datetime

my_string = "24/03/2021"
print("날짜 문자열 :")
print(my_string)
print("변환된 타임스탬프 :")
print(time.mktime(datetime.datetime.strptime(my_string, "%d/%m/%Y").timetuple()))

실행 결과

날짜 문자열 :
24/03/2021
변환된 타임스탬프 :
1616544000.0

코드 설명

  • 먼저 timedatetime 패키지를 임포트합니다.

  • 날짜 정보가 담긴 문자열을 정의하고 콘솔에 출력합니다.

  • strptime 메서드를 사용하여 문자열을 지정된 형식(%d/%m/%Y, 즉 일/월/년 순서)에 맞게 파싱합니다. 이 과정에서 불필요한 공백이나 기호가 제거되고 날짜 객체가 생성됩니다.

  • timetuple()을 호출해 datetime 객체를 구조화된 시간 객체로 변환한 뒤, time 패키지의 mktime 메서드에 전달하여 타임스탬프 값을 얻습니다.

  • 최종 결과가 콘솔에 출력됩니다.

참고 사항

strptime의 형식 지정자는 입력 문자열의 날짜 표기 방식에 따라 조정해야 합니다. 예를 들어 "2021-03-24"와 같은 형식이라면 %Y-%m-%d를 사용해야 합니다. 또한 mktime은 로컬 시간대를 기준으로 동작하므로, UTC 기준 변환이 필요하다면 calendar.timegm()과 같은 대안을 고려하는 것이 좋습니다.