파이썬에서 문자열 공백을 제거하는 2가지 방법
1. 문자열.strip()
2. 문자열.replace(old, new)
1. 문자열.strip()
strip함수는 양쪽 끝에 있는 공백 or 매개변수을 제거하는 함수이다.
양쪽 끝에 있는 공백 or 매개변수을 제거한 후 공백을 제거한 새로운 문자열을 반환한다.
따라서 모든 공백을 제거하지 못하고 문자열 양 끝에 있는 공백만 제거할 수 있다.
- strip, rstrip, lstrip
strip() - 문자열 양쪽(오른쪽, 왼쪽) 공백 or 매개변수 삭제
rstrip() - 문자열 오른쪽 공백 or 매개변수 삭제
lstrip() - 문자열 왼쪽 공백 or 매개변수 삭제
공백이 제거되었는지 쉽게 확인하기 위해 list형태로 바꾸어 출력했다.
# 공백있는 문자열
>>> test = ' abc d efg '
>>> list(test)
[' ', 'a', 'b', 'c', ' ', 'd', ' ', 'e', 'f', 'g', ' ', ' ']
#strip - 양쪽 공백 제거
>>> list(test.strip())
['a', 'b', 'c', ' ', 'd', ' ', 'e', 'f', 'g']
#rstip - 오른쪽 공백 제거
>>> list(test.rstrip())
[' ', 'a', 'b', 'c', ' ', 'd', ' ', 'e', 'f', 'g']
#lstrip - 왼쪽 공백 제거
>>> list(test.lstrip())
['a', 'b', 'c', ' ', 'd', ' ', 'e', 'f', 'g', ' ', ' ']
test = 'abcde'
# 오른쪽 끝이나 왼쪽 끝에 e가 있으므로 제거
test.strip('e')
#출력결과
'abcd'
# 오른쪽 끝이나 왼쪽 끝에 b가 있으므로 제거하지 않음
test.strip('b')
#출력결과
'abcde'
2. 문자열.replace(old, new)
replace함수는 원래있던 문자를 새로운 문자로 대체하는 함수이다.
첫번째 파라미터(old) - 기존 문자열에서 없애고 싶은 문자 or 문자열
두번째 파라미터(new) - 없애고 난 후 대체하고 싶은 문자 or 문자열
따라서 모든 공백을 제거하지 못하는 strip과 달리 replace는 모든 공백을 제거할 수 있다.
>>> test = 'Hello hi happy'
# 공백 제거
>>> test.replace(' ','')
'Hellohihappy'
# h 제거 후 '_'로 대체 : 대소문자 구분함
>>> test.replace('h','_')
'Hello _i _appy'
# l 제거 후 공백 추가
>>> test.replace('l',' ')
'He o hi happy'
공백있는문자열.replace(' ','')을 사용하여 공백을 없앨 수 있다.
첫번째 파라미터 -> ' ' (스페이스)
두번째 파라미터 -> '' (빈 문자열)
'Study > Python study' 카테고리의 다른 글
[Python(파이썬)]컴프리헨션(Comprehension), for문, if문 한 줄로 만들기 (0) | 2022.03.11 |
---|---|
[Python(파이썬)] for문(반복문), if문(조건문) (0) | 2022.03.10 |
[Python(파이썬)] 이차원 리스트 입력 받기 (0) | 2021.12.01 |
[Python(파이썬)] 다양하게 입력받기 [input(), sys.stdin.readline(), strip()] (0) | 2021.12.01 |
[Python(파이썬)] 입력, 출력 (input(), print()) (0) | 2021.12.01 |
댓글