문자열을 잘라서 리스트로 변환하는 함수 split()를 알아보자
먼저 split함수는
1. 문자열.split()
2. 문자열.split("구분자")
3. split("구분자",분할횟수)
4. split(sep = "구분자",maxsplit = 분할횟수)
이렇게 쓰인다
1. 문자열.split()
split()은 문자열 사이 공백을 기준으로 자른다
ex1) 문자열 사이 공백x
class Test:
def __init__(self):
data = "12345"
value1 = data.split()
print("Origanl: ",data)
print("split(): ",value1)
print("length : ",len(value1))
if __name__ == '__main__':
Test()
결과)
문자열 사이 공백이 없어 길이가 1인 리스트로 변환되었다
ex2) 문자열 사이 공백 o
class Test:
def __init__(self):
data = "1 2 3 4 5"
value1 = data.split()
print("Origanl: ",data)
print("split(): ",value1)
print("length : ",len(value1))
if __name__ == '__main__':
Test()
결과)
공백 사이를 다 잘라서 저장되어 리스트 길이는 5
2. 문자열.split("구분자")
ex) 구분자 기준으로 문자열을 자르고 리스트에 저장한다
class Test:
def __init__(self):
data = "1 2 3 4 5"
value1 = data.split(' ')
print("Origanl : ",data)
print("split(' '): ",value1)
print("length : ",len(value1))
if __name__ == '__main__':
Test()
' ' 공백을 기준으로 문자열을 자른다
결과)
공백을 구분자로 설정했기 때문에 공백 사이를 다 잘라서 저장되어 문자열이 길이가 5인 리스트로 변환됨
3. split("구분자",분할횟수)
ex1) 구분자 기준으로 몇 개까지 자를지 결정한다
공백, 3회
class Test:
def __init__(self):
data = "1 2 3 4 5"
value1 = data.split(' ',3)
print("Origanl : ",data)
print("split(' ',3): ",value1)
print("length : ",len(value1))
if __name__ == '__main__':
Test()
결과)
공백을 3번만 잘랐으므로 나머지는 안 잘려서 출력됨
ex) 공백, 4회
class Test:
def __init__(self):
data = "1 2 3 4 5"
value1 = data.split(' ',4)
print("Origanl : ",data)
print("split(' ',4): ",value1)
print("length : ",len(value1))
if __name__ == '__main__':
Test()
결과)
공백이 4개인 문자열이므로 다 잘려서 출력됨
4. split(sep = "구분자",maxsplit = 분할횟수)
3번 split("구분자",분할횟수)와 똑같이 쓰인다
ex1) 구분자 기준으로 몇 개까지 자를지 결정한다
공백, 3회
class Test:
def __init__(self):
data = "1 2 3 4 5"
value1 = data.split(sep=' ',maxsplit=3)
print("Origanl : ",data)
print("split(sep=' ',maxsplit=3): ",value1)
print("length : ",len(value1))
if __name__ == '__main__':
Test()
결과)
3번 결과랑 같음
ex) 공백, 4회
class Test:
def __init__(self):
data = "1 2 3 4 5"
value1 = data.split(sep=' ',maxsplit=4)
print("Origanl : ",data)
print("split(sep=' ',maxsplit=4): ",value1)
print("length : ",len(value1))
if __name__ == '__main__':
Test()
결과)
전체 비교 코드
class Test:
def __init__(self):
data = "1,2,3,4,5"
value1 = data.split()
value2 = data.split(',')
value3 = data.split(',',2)
value4 = data.split(sep=',',maxsplit=3)
print("Origanl : ",data)
print("split() : ",value1)
print("split(',') : ",value2)
print("split(',',2) : ",value3)
print("split(sep=',',maxsplit=3) : ", value4)
if __name__ == '__main__':
Test()
결과)
반응형
'Python' 카테고리의 다른 글
[Python] 리스트 원소 제거 함수 비교/ remove,clear,pop, del (0) | 2021.09.11 |
---|---|
[Python] append(),extend(),insert()차이 / 결과 값 비교 (0) | 2021.09.11 |
[Python] 코드 행 바꾸기 단축기 (0) | 2021.08.25 |
Python 문자열을 바이트 배열로 변환 (0) | 2021.08.24 |
[Python] 2byte 배열을 int정수형으로 변환 (0) | 2021.08.17 |
댓글