이 튜토리얼에서는 Python 문자열의 partition() 메서드에 대해 자세히 알아보겠습니다.
partition() 메서드란?
partition() 메서드는 하나의 인자인 구분자(separator)를 받아, 다음 세 개의 요소로 구성된 튜플(tuple)을 반환합니다.
- 구분자 앞부분의 부분 문자열
- 구분자 자체
- 구분자 뒷부분의 부분 문자열
만약 문자열 안에 구분자가 여러 번 등장한다면, partition() 메서드는 항상 첫 번째로 발견된 구분자를 기준으로 문자열을 나눕니다. 이 점이 비슷한 기능의 split() 메서드와 차별화되는 특징 중 하나입니다.
사용 방법
다음 단계를 따라 코드를 작성해 보세요.
- 문자열을 초기화합니다.
- partition(separator) 메서드를 호출하여 분할된 튜플을 출력합니다.
- 원하는 어떤 구분자든 자유롭게 전달할 수 있습니다.
예제 1: 공백을 구분자로 사용하기
# 문자열 초기화
string = "Tutorialspoint is a great place to learn Python"
# 공백(' ')을 구분자로 문자열 분할
print(string.partition(' '))실행 결과
위 코드를 실행하면 다음과 같은 결과가 출력됩니다.
('Tutorialspoint', ' ', 'is a great place to learn Python')출력 결과에서 볼 수 있듯이, 첫 번째 공백을 기준으로 문자열이 세 부분으로 나뉘어 튜플 형태로 반환되었습니다.
예제 2: 구분자가 존재하지 않는 경우
문자열 내에서 지정한 구분자를 찾지 못하면, 전체 문자열과 두 개의 빈 문자열로 이루어진 튜플이 반환됩니다. 예시를 통해 확인해 보겠습니다.
# 문자열 초기화
string = "Tutorialspoint is a great place to learn Python"
# 대소문자가 일치하지 않는 구분자 사용
print(string.partition('tutorialspoint'))실행 결과
위 프로그램을 실행하면 다음과 같은 결과를 얻을 수 있습니다.
('Tutorialspoint is a great place to learn Python', '', '')'tutorialspoint'라는 구분자는 소문자로 작성되어 원본 문자열의 'Tutorialspoint'와 일치하지 않기 때문에, 구분자를 찾지 못하고 전체 문자열이 그대로 반환된 것입니다. 이처럼 partition()은 대소문자를 구분하므로 주의해서 사용해야 합니다.
마무리
지금까지 Python 문자열의 partition() 메서드의 기본 개념과 사용법, 그리고 구분자를 찾지 못했을 때의 동작까지 살펴보았습니다. partition()은 문자열을 정확히 세 부분으로 나누어 튜플로 반환하기 때문에, 구분자 기준으로 앞뒤 내용을 명확하게 구분해야 하는 상황에서 매우 유용하게 활용할 수 있습니다.
튜토리얼에 대해 궁금한 점이 있다면 댓글 섹션에 남겨주세요.