Python에서 날짜와 시간을 다루는데 유용한 라이브러리로 dateutil
이 있습니다. dateutil.parser
모듈은 문자열로 표현된 날짜와 시간을 해석하는 기능을 제공하며, parserinfo
클래스를 사용하여 해석 규칙을 지정할 수 있습니다.
여기에는 dateutil.parser.parserinfo
클래스의 dayfirst
와 weekstart
속성을 설정하여 주옵션과 주단위로 날짜 추출하는 예제가 있습니다.
주옵션으로 날짜 추출
예를 들어, “30-01-2022”와 같이 일-월-연도 순서로 표현된 문자열에서 날짜를 추출하고 싶다면 다음과 같이 할 수 있습니다.
from dateutil import parser
parser_info = parser.parserinfo(dayfirst=True)
date_str = "30-01-2022"
date = parser.parse(date_str, parserinfo=parser_info).date()
print(date)
이 예제에서 parser.parserinfo
를 사용하여 dayfirst
옵션을 True
로 설정하면, 날짜를 일-월-연도 순서로 해석합니다. dateutil.parser.parse()
함수를 사용하여 문자열을 날짜로 변환하고, .date()
메서드를 사용하여 날짜 객체를 추출합니다. 결과적으로 “2022-01-30”이 출력됩니다.
주단위로 날짜 추출
“2022-W04”와 같이 주단위로 표현된 문자열에서 해당 주의 첫 번째 날짜를 추출하고 싶다면 다음과 같이 할 수 있습니다.
from dateutil import parser
parser_info = parser.parserinfo(weekstart=0)
date_str = "2022-W04"
date = parser.parse(date_str, parserinfo=parser_info)
print(date)
예제에서 parser.parserinfo
를 사용하여 weekstart
옵션을 0
으로 설정하면, 주의 첫 번째 날짜로 해석합니다. dateutil.parser.parse()
함수를 사용하여 문자열을 날짜로 변환한 뒤, 그대로 출력합니다. 결과적으로 “2022-01-24 00:00:00”이 출력됩니다.
결론
dateutil
의 parserinfo
클래스를 사용하면 날짜와 시간을 다양한 형식에서 추출하고 해석할 수 있습니다. dayfirst
옵션으로 일-월-연도 순서를 지정하거나, weekstart
옵션으로 주의 첫 번째 날짜를 지정할 수 있습니다. 이를 활용하여 프로그램에서 다양한 일정 정보를 다룰 수 있습니다.
참고 문서: