split() 함수란?
split() 함수는 파이썬에서 문자열을 다룰 때 매우 유용하게 사용되는 문자열 메소드입니다. 이 함수는 주어진 문자열을 사용자가 지정한 구분자(separator)를 기준으로 여러 부분으로 나누어 각각의 부분을 리스트의 요소로 만들어 반환합니다. 예를 들어, 쉼표로 구분된 데이터나 공백으로 구분된 단어들을 개별적으로 처리해야 할 때 특히 효과적입니다. 구분자를 지정하지 않으면 기본적으로 공백을 기준으로 문자열을 나누며, 선택적으로 최대 분할 횟수를 지정하여 원하는 만큼만 문자열을 나눌 수도 있습니다.
기본 문법
string.split(separator, maxsplit)
Python
복사
•
separator: 문자열을 나눌 구분자 (기본값은 공백)
•
maxsplit: 최대 분할 횟수 (기본값은 -1로 모든 가능한 분할 수행)
사용 예시
split() 함수의 다양한 사용 예시를 통해 이 함수의 실제 활용 방법을 살펴보겠습니다. 기본적으로 공백을 구분자로 사용하는 경우부터 시작하여, 특정 구분자를 지정하는 방법, 그리고 분할 횟수를 제한하는 방법까지 단계별로 알아보겠습니다.
1. 기본 사용법 (공백 기준)
text = "Hello World Python"
result = text.split()
print(result) # ['Hello', 'World', 'Python']
Python
복사
2. 특정 구분자 사용
text = "apple,banana,orange"
result = text.split(',')
print(result) # ['apple', 'banana', 'orange']
Python
복사
3. maxsplit 사용
text = "one:two:three:four"
result = text.split(':', 2)
print(result) # ['one', 'two', 'three:four']
Python
복사
주요 특징
•
구분자가 연속으로 있는 경우 빈 문자열이 포함될 수 있습니다.
•
문자열의 앞뒤 공백은 자동으로 제거되지 않습니다.
•
구분자를 지정하지 않으면 모든 공백 문자(스페이스, 탭, 줄바꿈)를 기준으로 분할합니다.
관련 함수
•
rsplit(): 오른쪽에서부터 문자열을 분할
•
splitlines(): 줄바꿈 문자를 기준으로 분할
주의사항
•
구분자는 정규표현식을 지원하지 않습니다. 정규표현식을 사용하려면 re.split()을 사용해야 합니다.
•
리스트로 반환되므로 필요한 경우 추가적인 형변환이 필요할 수 있습니다.
•
대소문자를 구분합니다.
활용 예제
# CSV 파일 데이터 처리
data = "kim,30,seoul\nlee,25,busan"
for line in data.splitlines():
name, age, city = line.split(',')
print(f"이름: {name}, 나이: {age}, 도시: {city}")
# URL 파싱
url = "https://www.example.com/path?param=value"
protocol, rest = url.split('://')
domain, path = rest.split('/', 1)
print(f"프로토콜: {protocol}")
print(f"도메인: {domain}")
print(f"경로: {path}")
Python
복사