[python] dateutil의 parserinfo 클래스를 사용하여 날짜 구문 분석 로케일 변경
파이썬에서는 dateutil라이브러리를 사용하여 날짜와 시간을 다룰 수 있습니다. 그 중에서도 parser
모듈은 문자열로 표현된 날짜와 시간을 파싱하여 datetime
객체로 변환하는 기능을 제공합니다.
dateutil.parser.parser
클래스는 기본적으로 영어로 된 로케일을 사용합니다. 하지만, 때로는 다른 로케일을 사용하여 날짜 문자열을 파싱해야 할 수도 있습니다. 이때 dateutil.parser.parserinfo
클래스를 사용하여 로케일을 변경할 수 있습니다.
다음은 dateutil.parser.parserinfo
클래스를 사용하여 한국어 로케일로 날짜를 파싱하는 예제 코드입니다.
from dateutil.parser import parser
from dateutil.parser import parserinfo
class KoreanParserInfo(parserinfo):
MONTHS = [("1월", "1월"), ("2월", "2월"), ("3월", "3월"), ("4월", "4월"), ("5월", "5월"), ("6월", "6월"), ("7월", "7월"), ("8월", "8월"), ("9월", "9월"), ("10월", "10월"), ("11월", "11월"), ("12월", "12월")]
# 한국어 parser
korean_parser = parser(parserinfo=KoreanParserInfo())
# 한국어로 표현된 날짜 문자열
date_string = "2022년 11월 15일"
# 날짜 파싱
date = korean_parser.parse(date_string)
print(date)
위 예제 코드에서 KoreanParserInfo
클래스를 정의하여 parserinfo
클래스를 상속받았습니다. 그리고 “MONTHS” 튜플에 한국어로 된 월 이름을 설정했습니다. 이렇게 한국어로 로케일을 설정해주면, 해당 로케일로 날짜를 파싱할 수 있습니다.
korean_parser.parse(date_string)
코드를 실행하면, “2022년 11월 15일” 문자열을 datetime
객체로 파싱하여 반환합니다. 이를 출력하면 “2022-11-15 00:00:00”과 같은 형식으로 나타날 것입니다.
이와 같이 dateutil.parser.parserinfo
클래스를 활용하여 날짜 구문 분석 로케일을 변경할 수 있습니다.
참고 문서: