반응형
쉽고 빠르게 한줄로 요약하면,
파이썬에서 Split 함수를 활용하는 이유는 문자열 조작을 위해서입니다.
함수의 모양은 아래와 같습니다.
# Python Split 함수 모양
# split 공백 기준으로 잘라주는 형태
문자열.split()
# '구분자'를 기준으로 잘라주는 형태
문자열.split('구분자')
# '구분자'로 기준을 잡고, 몇 개까지 자를지 결정한다.
문자열.split('구분자', 분할횟수)
# 바로 위의 내용과 동일하게 사용된다.
문자열.split(sep='구분자', maxsplit=분할횟수)
1. 문자열.split()
공백없이 출력한 경우, 예시입니다.
# Test 코드 작성
class splitTest1 :
def __init__(self):
data = "12345"
values = data.split()
print('data :', data)
print('values : ', values)
if __name__ == '__main__':
splitTest1()
결과
data : 12345
values : ['12345']
2. 문자열.split('구분자')
구분자에 '-'를 기준으로 잘라보겠습니다.
class splitTest2 :
def __init__(self):
data = "010-1234-5678"
values = data.split('-')
print('data :', data)
print('values : ', values)
if __name__ == '__main__':
splitTest2()
결과
결과를 보시면, -를 기준으로 값이 잘려있는 것을 볼 수 있습니다.
이처럼, 구분자를 활용하여 문자열을 자를 수 있습니다.
data : 010-1234-5678
values : ['010', '1234', '5678']
3. 문자열.split('구분자', 분할횟수)
구분자는 2.예시와 동일하게 '-' 기준이며, 1개 기준으로 분할하도록 하겠습니다.
예시1.
class splitTest3_1 :
def __init__(self):
data = "010-1234-5678"
values = data.split('-', 1)
print('data :', data)
print('split("-", 1) : ', values)
if __name__ == '__main__':
splitTest3_1()
예시1. 결과
하단 결과를 보시면 '-'를 기준으로 1개를 잘랐을 때, 010만 분리되는 것을 볼 수 있습니다.
data : 010-1234-5678
split("-", 1) : ['010', '1234-5678']
예시2.
1개가 아닌 4개를 기준으로 분할하겠습니다.
class splitTest3_2 :
def __init__(self):
data = "010-1234-5678-0135-2468"
values = data.split('-', 4)
print('data :', data)
print('split("-", 4) : ', values)
if __name__ == '__main__':
splitTest3_2()
예시2. 결과
하단 결과를 보시는 것과 같이 구분자 - 최대 갯수인 4개까지 분할하여 전체가 분할된 것을 확인하실 수 있습니다.
data : 010-1234-5678-0135-2468
split("-", 4) : ['010', '1234', '5678', '0135', '2468']
4. 문자열.split(sep='구분자', maxsplit=분할횟수)
3번과 동일한 값이 나오는 형태로 4번이 가장 많이 활용되는 것으로 알고 있습니다.
class splitTest4 :
def __init__(self):
data = "010-1234-5678-0135-2468"
values = data.split(sep = '-', maxsplit= 4 )
print('data :', data)
print('split(sep = "-", maxsplit = 4) : ', values)
if __name__ == '__main__':
splitTest4()
결과
하단 결과를 보시면, 3번의 2번 예시와 동일한 값이 출력되는 것을 확인하실 수 있습니다.
data : 010-1234-5678-0135-2468
split(sep = "-", maxsplit = 4) : ['010', '1234', '5678', '0135', '2468']
반응형
'SkillSet > Python' 카테고리의 다른 글
[Python] : Open API 데이터를 DataFrame으로 불러오기 (0) | 2024.03.17 |
---|---|
백준 10813번 : 공 바꾸기 (Python3) (0) | 2023.05.24 |
백준 10818번 : 최소, 최대 (Python3) (0) | 2023.05.24 |
백준 25304번 : 영수증 (Python3) (0) | 2023.05.11 |
백준 18108번 : 1998년생인 내가 태국에서는 2541년?! (Python3) (0) | 2023.05.10 |