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

파이썬에서 날짜 문자열을 datetime 객체로 변환하는 방법

파이썬에서 문자열로 된 날짜 데이터를 datetime 객체로 변환해야 하는 경우가 자주 있습니다. 예를 들어 사용자 입력이나 CSV 파일에서 읽어온 '29/12/2017' 같은 날짜 문자열을 실제 날짜 타입으로 바꿔야 연산, 비교, 정렬 등 다양한 작업을 수행할 수 있습니다.

strptime() 함수를 이용한 변환

문자열을 datetime 객체로 변환하려면 datetime.strptime() 함수를 사용합니다. 이 함수는 두 개의 인자를 받습니다.

  • date_str: 변환할 날짜 문자열
  • format_str: 해당 문자열의 날짜 형식(포맷 코드)

포맷 코드는 %d(일), %m(월), %Y(4자리 연도) 등으로 구성되며, 문자열의 실제 형태와 정확히 일치해야 합니다.

예제 코드

import datetime

date_str = '29/12/2017' # 날짜 문자열 - 2017년 12월 29일
format_str = '%d/%m/%Y' # 날짜 형식 지정
datetime_obj = datetime.datetime.strptime(date_str, format_str)

print(datetime_obj.date())

실행 결과

위 코드를 실행하면 다음과 같은 출력 결과를 얻을 수 있습니다.

2017-12-29

자주 사용되는 포맷 코드

날짜 형식에 따라 아래와 같은 포맷 코드를 조합하여 사용할 수 있습니다.

  • %d — 일 (01~31)
  • %m — 월 (01~12)
  • %Y — 4자리 연도 (예: 2017)
  • %y — 2자리 연도 (예: 17)
  • %H, %M, %S — 시, 분, 초

예를 들어 '12/29/2017'처럼 월이 앞에 오는 mm/dd/yyyy 형식이라면 포맷 문자열을 '%m/%d/%Y'로 지정하면 됩니다. 문자열 형식과 포맷 코드가 일치하지 않으면 ValueError가 발생하므로 주의해야 합니다.