본문 바로가기
Python

[Python] Split: split(), max split

by Henry Cho 2022. 3. 6.
728x90

Split: split(), max split


포스트 난이도: HOO_Junior

 

[Notice] 포스트 난이도에 대한 설명

안녕하세요, HOOAI의 Henry입니다. Bro들의 질문에 대한 내용을 우선적으로 포스팅이 되다 보니 각각의 포스트에 대한 난이도가 달라서 난이도에 대한 부분을 작성하면 좋겠다는 의견을 들었습니다

whoishoo.tistory.com


 

# split()

Python에서 split은 string을 나누어서 list를 만들 때 사용하는 기능이다.

split이라는 영단어 뜻을 찾아보면 분할이라는 의미를 가지고 있는데, 파이썬에서도 문자열(String)을 나누어주는 역할을 수행한다.

Split의 기본적인 기능은 String을 나누어서 list를 만들어주는 거지만 이 기능을 다양한 상황에서 활용이 가능하다는 점에서 많이 사용되는 기능 중 하나이다.

우선 간단한 split() 예제를 살펴보면 아래와 같다.

# Split Example #01

x = "Good morning y'all."
Hello = x.split(" ")
print(Hello)
['Good', 'morning', "y'all."]

Process finished with exit code 0

위의 예제 코드 경우에는 whitespace를 기준으로 string이 split 되어 list가 되었다.

split 조건을 whitespace를 주었기 때문인데 조건을 달리한다면 split 되는 기준 또한 달라져서 list의 결과도 달라질 수 있다.

# Split Example #02

x = "Howdi, Good morning y'all."
Hello = x.split(",")
print(Hello)
['Howdi', " Good morning y'all."]

Process finished with exit code 0

Example 2의 경우에는 split되는 조건이 Comma(,)이기 때문에 쉼표 기준으로 2개로 나누어진 걸 확인할 수가 있다.

참고로 Comma가 split 조건이었기 때문에 산출된 결과에는 나오지는 않는다.


# Max Split

Pyhton의 split()은 String을 나누고 싶은 만큼 나눌 수 있도록 조건을 추가적으로 제시할 수 있는데 그게 바로 Max split이다.

Max split을 지정해주게 되면, list을 구성할 때 split 조건이 충족되더라도 더 이상 나누지 않게 되고 제시된 조건만큼만 string을 나눠서 list화를 한다.

Max split을 사용하는 방법은 split("조건") 이런식으로 split을 작성했다면, split("조건", 나눌 개수) 이런 식으로 작성해주면 된다.

아래의 간단한 예제를 살펴보면 바로 이해가 간다.

# Split Example #03

x = "Howdi, Good morning y'all."
Hello = x.split(" ", 1)
print(Hello)
['Howdi,', "Good morning y'all."]

Process finished with exit code 0

위의 예제 코드의 경우에는 split 되는 조건이 whitespace임에도 parameter를 1로 지정해뒀기 때문에 결과적으로 리스트에는 string이 2개로만 나누어져 저장되고 결과가 산출된다.

따라서 whitespace가 더 있음에도 한번만 나눠서 list화가 된 걸 확인할 수 있다.

대신 Example 2와 다른 점은 whitespace가 분할 조건이기 때문에 Example 3에서는 comma도 최종 산출된 결과에 나오는 걸 알 수 있다.


728x90

댓글