본 포스팅에서는 파이썬에서 문자열 쪼개기, 자르기가 가능한 split 함수에 대해 예제와 함께 다루어 보겠습니다.
파이썬 split 함수 구문
split 함수를 사용하는 방식은 크게 3가지 정도가 있는 거 같습니다.
"문자열".split()
"문자열".split("구분자")
"문자열".split("구분자", 분할 횟수)
“문자열”.split() 함수는 “문자열”을 주어진 “구분자”를 통해 규칙적으로 잘라준 후 리스트를 생성해서 반환합니다.
위에서도 볼 수 있지만, 다음과 같은 인자들을 넣을 수 있습니다.
- sep 인자 (“구분자”)
“문자열”에서 “구분자”를 찾아서 이를 기준으로 문자열을 잘라서 리스트에 넣습니다. 값을 지정하지 않는 경우 스페이스와 엔터를 구분자로 하여금 문자열을 자릅니다.
- maxsplit 인자 (분할 횟수)
“문자열”을 자를 때 몇 번 자를지를 정해주는 인자입니다. 값을 지정하지 않는 경우 무제한적으로 문자열 전체를 “구분자”를 기준으로 자릅니다.
파이썬 split 함수 예제
“문자열”.split()
txt = "오늘 제가 본 영화는 미션 임파서블입니다."
txt_split = txt.split()
print(txt_split)
결과값:
“문자열”.split() 형태로 함수를 호출하면, 스페이스를 기준으로 문자열 전체를 나누어 리스트 형태로 반환합니다.
“문자열”.split(“구분자”)
txt = "안녕하세요, 제 이름은 준장이고, 나이는 24살입니다."
txt_split = txt.split(", ")
print(txt_split)
결과값:
“문자열”.split(“구분자”) 형태로 함수를 호출하면, 주어진 “구분자”를 기준으로 “문자열”을 자르고 리스트로 반환합니다.
“문자열”.split(“구분자”, 분할 횟수)
txt = "사과#바나나#체리#오렌지#수박"
txt_split = txt.split("#", 1)
print(txt_split)
결과값:
“문자열”.split(“구분자”, 분할 횟수) 형태로 함수를 호출하면, 주어진 “구분자”를 기준으로 “문자열”을 정해진 분할 횟수만큼만 잘라서 리스트로 반환합니다. 예시에선 1을 넣었기 때문에 처음보는 “#”에서 문자열을 한번 잘라주고 끝납니다.
번외: “문자열”.split(maxsplit=분할 횟수, sep=”구분자”)
txt = "사과#바나나#체리#오렌지#수박"
txt_split = txt.split(maxsplit=1, sep="#")
print(txt_split)
결과값:
split() 함수는 “구분자”와 분할 횟수 인자를 둘 다 넣어줄때 “구분자”가 먼저지만, “구분자”는 sep, 분할 횟수는 maxsplit으로 예시처럼 정의한다면 순서를 바꾸어 넣어줘도 됩니다.
split(maxsplit=1, sep=”#”)은 split(“#”, 1)과 완전히 동일한 결과값을 가집니다.