파이썬 문자열 접두사·접미사 확인하기
파이썬에서는 문자열이 특정 텍스트로 시작하는지 또는 끝나는지를 손쉽게 확인할 수 있는 내장 메서드를 제공합니다. 바로 startswith()와 endswith()입니다. 이 두 메서드는 파일 확장자 검사, URL 판별, 사용자 입력 검증 등 다양한 상황에서 유용하게 활용됩니다.
startswith() – 특정 접두사로 시작하는지 확인
startswith() 메서드는 문자열 객체에 호출하며, 검색하고 싶은 접두사(prefix) 문자열을 인수로 받습니다. 문자열이 해당 접두사로 시작하면 True, 그렇지 않으면 False를 반환합니다.
>>> 'hello world'.startswith('hell')
True
>>> 'hello world'.startswith('nope')
False위 예제에서 'hello world'는 'hell'로 시작하므로 True가 반환되고, 'nope'로는 시작하지 않으므로 False가 반환됩니다.
endswith() – 특정 접미사로 끝나는지 확인
마찬가지로 endswith() 메서드는 주어진 문자열이 지정한 접미사(suffix)로 끝나는지를 검사합니다. 사용 방법은 startswith()와 동일합니다.
>>> 'hello world'.endswith('orld')
True
>>> 'hello world'.endswith('nope')
False'hello world'는 'orld'로 끝나기 때문에 True가 출력되고, 'nope'로 끝나지 않으므로 False가 출력됩니다.
추가 팁: 검색 범위 지정하기
두 메서드 모두 선택적으로 시작 위치(start)와 끝 위치(end)를 지정할 수 있어, 문자열의 일부 구간만 검사하는 것도 가능합니다.
>>> 'hello world'.startswith('wor', 6)
True
>>> 'hello world'.endswith('hello', 0, 5)
True또한 여러 개의 접두사나 접미사를 튜플 형태로 전달하면, 그중 하나라도 일치하는지 확인할 수 있습니다.
>>> filename = 'report.pdf'
>>> filename.endswith(('.jpg', '.png', '.pdf'))
True이처럼 startswith()와 endswith()는 간단하지만 강력한 문자열 검사 도구이므로, 조건문과 함께 활용하면 코드의 가독성과 안정성을 크게 높일 수 있습니다.