새소식

반응형
Programming Language/Python

[Python] 파이썬 split 함수

  • -
반응형

Python의 split() 함수는 문자열을 특정 구분자(separator)를 기준으로 나누는 데 사용된다. 기본적으로 split() 함수는 문자열을 공백(space)을 기준으로 나눈다. 하지만 구분자를 지정하여 문자열을 원하는 방식으로 분할할 수도 있다.

 

split() 함수를 사용해야 할 일반적인 상황과 목적은 아래와 같다.

 

텍스트 파일 또는 문자열에서 필요한 정보를 추출하려고 할 때 split() 함수는 구분자를 사용하여 텍스트 데이터를 파싱 하는 데 유용하다. 예를 들어, CSV 파일의 데이터를 분리하거나 로그 파일에서 필요한 정보를 추출하는 데 사용할 수 있다.

 

사용자 입력을 처리하거나 외부 데이터를 가져올 때 split() 함수는 사용자가 입력한 데이터를 적절한 형식으로 분리하여 처리할 때 유용하다. 예를 들어, 사용자가 입력한 명령을 파싱 하거나 설정 파일에서 구성 값을 추출하는 데 사용할 수 있다.

 

문자열에서 특정 부분을 추출하거나 특정 문자열을 대체하려고 할 때 split() 함수는 문자열을 나누고 조작하는 도구로 활용된다.

 

데이터를 분석하거나 기계 학습 모델을 훈련시킬 때 데이터 전처리 단계에서 split() 함수를 사용하여 데이터를 특정 벡터로 변환할 수 있다. 예를 들어, 텍스트 데이터를 단어 또는 문장 단위로 분리하여 특징을 추출하는 데 사용된다.

 

특정 문자열이나 패턴을 찾거나 특정 조건을 만족하는 문자열을 필터링할 때 split() 함수는 문자열을 분할하고 원하는 조건을 확인하는 데 사용된다.

 

데이터베이스 쿼리 또는 데이터베이스 레코드를 처리할 때 split() 함수는 쿼리 문자열을 분석하거나 데이터를 추출하는 데 활용된다.

 

split() 함수는 문자열을 나눈 유용한 도구 중 하나이며, 다양한 상황에서 데이터를 분할하고 처리하는 데 활용된다. 이 함수를 잘 이해하고 활용하면 다양한 텍스트 처리 및 데이터 처리 작업을 보다 쉽게 수행할 수 있다.

 

 


Python에서 split() 함수를 사용은 기본적으로 공백(space)을 기준으로 나눈다, 하지만 구분자를 지정하여 문자열을 원하는 방식으로 분할할 수도 있다, split() 함수의 다양한 방법을 살펴보자.

 

이 형식은 아무 구분자를 지정하지 않을 때 사용된다. 기본적으로 문자열을 공백(space)을 기준으로 나눈다.

text = "Hello World" words = text.split() print(words) # 출력 : ['Hello', 'World']

 

문자열을 지정한 구분자를 기준으로 나눈다.

csv_data = "apple,banana,grape" fruits = csv_data.split(',') print(fruits) # 출력 : ['apple', 'banana', 'grape'] # fruits는 ['apple', 'banana', 'grape']를 포함하는 리스트가 됩니다.

 

문자열을 지정한 구분자를 기준으로 분할 횟수를 제한한다. 분할 횟수는 나눌 횟수를 나타내며 지정된 횟수만큼만 나눈다.

text = "one two three four five" parts = text.split(' ', 2) print(parts) # 출력 : ['one', 'two', 'three four five'] # parts는 ['one', 'two', 'three four five']를 포함하는 리스트가 됩니다.

 

키워드 인수 sep와 maxsplit을 사용하여 문자열을 나눈다. sep는 구분자를 나타내고, maxsplit은 분할 횟수를 제한한다.

text = "one two three four five" parts = text.split(sep=' ', maxsplit=2) print(parts) # 출력 : ['one', 'two', 'three four five'] # parts는 ['one', 'two', 'three four five']를 포함하는 리스트가 됩니다.

 

구분자를 지정하지 않으며 기본적으로 문자열을 공백(space)을 기준으로 나눈다. 이것은 문자열 내의 연속된 공백 문자(스페이스, 탭, 줄 바꿈 등)를 기준으로 문자열을 분할한다. 여러 연속된 공백 문자가 있더라도 단일 공백으로 간주한다.

text = "Hello World" words = text.split() print(words) # 출력 : ['Hello', 'World'] # words는 ['Hello', 'World']를 포함하는 리스트가 됩니다.

 

명시적으로 공백을 구분자로 지정한 것이다. 이 경우 연속된 공백 문자도 모두 구분자로 취급되어 문자열을 나눈다.

text = "Hello World" words = text.split(' ') # 출력 : ['Hello', '', '', '', 'World'] # words는 ['Hello', '', '', '', 'World']를 포함하는 리스트가 됩니다.

 


split()  함수는 문자열을 분할하여 리스트로 반환하며, 이를 통해 문자열을 조작하거나 원하는 부분을 추출할 수 있다. 이를 활용하여 데이터 파싱, 텍스트 처리, CSV 파일 처리 등 다양한 작업을 수행할 수 있다.

 

words = "This-is-Hungry-Developer" # 문자열.split('-', 3) print(words.split('-', 3)) # 출력 : ['This', 'is', 'Hungry', 'Developer'] # 문자열.split('-', maxsplit=3) print(words.split('-', maxsplit = 3)) # 출력 : ['This', 'is', 'Hungry', 'Developer'] # 문자열.split(sep=' ', maxsplit=3) print(words.split(sep = '-', maxsplit = 3)) # 출력 : ['This', 'is', 'Hungry', 'Developer']

• 문자열. split('-', 3)
 문자열. split('-', maxsplit=3)
 문자열. split(sep='-', maxsplit=3)

 

위의 3개 모두 같은 결과를 출력할 수 있으니 사용하시는 분에게 가장 편한 방법으로 사용하면 될 거 같다.

728x90
반응형

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.