Python에서 문자열에서 공백을 제거하는 방법
소개
이 자습서에서는 Python의 문자열에서 공백을 제거하는 데 사용할 수 있는 다양한 방법의 예를 제공합니다.
Python 문자열은 변경할 수 없으므로 값을 변경할 수 없습니다. 문자열 값을 조작하는 모든 메서드는 새 문자열을 반환합니다.
이 자습서의 예제에서는 명령줄에서 Python 대화형 콘솔을 사용하여 공백을 제거하는 다양한 방법을 보여줍니다. 예제에서는 다음 문자열을 사용합니다.
s = ' Hello World From DigitalOcean \t\n\r\tHi There '
출력은 다음과 같습니다.
Output Hello World From DigitalOcean
Hi There
이 문자열에는 공백(
), 탭(
), 줄 바꿈(
) 및 캐리지 리턴(
).
strip() 메서드를 사용하여 선행 및 후행 공백 제거
Python 문자열 strip()
메서드는 문자열에서 선행 및 후행 문자를 제거합니다. 제거할 기본 문자는 공백입니다.
문자열 변수를 선언합니다.
- s = ' Hello World From DigitalOcean \t\n\r\tHi There '
strip()
메서드를 사용하여 선행 및 후행 공백을 제거합니다.
- s.strip()
출력은 다음과 같습니다.
Output'Hello World From DigitalOcean \t\n\r\tHi There'
선행 공백이나 후행 공백만 제거하려면 lstrip()
및 rstrip()
메서드를 사용할 수 있습니다.
replace() 메서드를 사용하여 모든 공백 제거
replace()
메서드를 사용하여 단어 사이를 포함하여 문자열에서 모든 공백 문자를 제거할 수 있습니다.
문자열 변수를 선언합니다.
- s = ' Hello World From DigitalOcean \t\n\r\tHi There '
replace()
메서드를 사용하여 공백을 빈 문자열로 바꿉니다.
- s.replace(" ", "")
출력은 다음과 같습니다.
Output'HelloWorldFromDigitalOcean\t\n\r\tHiThere'
join() 및 split() 메서드를 사용하여 중복 공백 및 줄 바꿈 문자 제거
split()
메서드와 함께 join()
메서드를 사용하여 중복된 공백 및 개행 문자를 모두 제거할 수 있습니다. 이 예에서 split()
메서드는 공백 문자의 기본 구분 기호를 사용하여 문자열을 목록으로 나눕니다. 그런 다음 join()
메서드는 목록을 다시 각 단어 사이에 단일 공백(\ \
)이 있는 하나의 문자열로 결합합니다.
문자열 변수를 선언합니다.
- s = ' Hello World From DigitalOcean \t\n\r\tHi There '
join()
및 split()
메서드를 함께 사용하여 중복 공백 및 개행 문자를 제거합니다.
- " ".join(s.split())
출력은 다음과 같습니다.
Output'Hello World From DigitalOcean Hi There'
translate() 메서드를 사용하여 모든 공백 및 개행 문자 제거
translate()
메서드를 사용하여 모든 공백 및 개행 문자를 제거할 수 있습니다. translate()
메서드는 지정된 문자를 사전 또는 매핑 테이블에 정의된 문자로 바꿉니다. 다음 예제에서는 모든 공백 문자를 포함하는 string.whitespace
문자열 상수와 함께 사용자 정의 사전을 사용합니다. 사용자 정의 사전 {ord(c): None for c in string.whitespace}
는 string.whitespace
의 모든 문자를 None
으로 바꿉니다.
string.whitespace
를 사용할 수 있도록 string
모듈을 가져옵니다.
- import string
문자열 변수를 선언합니다.
- s = ' Hello World From DigitalOcean \t\n\r\tHi There '
translate()
메서드를 사용하여 모든 공백 문자를 제거합니다.
- s.translate({ord(c): None for c in string.whitespace})
출력은 다음과 같습니다.
Output'HelloWorldFromDigitalOceanHiThere'
Regex를 사용하여 공백 문자 제거
정규식을 사용하여 공백 문자를 일치시키고 re.sub()
함수를 사용하여 제거할 수도 있습니다.
이 예에서는 regexspaces.py
파일을 사용하여 정규식을 사용하여 공백 문자를 제거할 수 있는 몇 가지 방법을 보여줍니다.
import re
s = ' Hello World From DigitalOcean \t\n\r\tHi There '
print('Remove all spaces using regex:\n', re.sub(r"\s+", "", s), sep='') # \s matches all white spaces
print('Remove leading spaces using regex:\n', re.sub(r"^\s+", "", s), sep='') # ^ matches start
print('Remove trailing spaces using regex:\n', re.sub(r"\s+$", "", s), sep='') # $ matches end
print('Remove leading and trailing spaces using regex:\n', re.sub(r"^\s+|\s+$", "", s), sep='') # | for OR condition
명령줄에서 파일을 실행합니다.
python3 regexspaces.py
다음과 같은 결과가 나타납니다.
Remove all spaces using regex:
HelloWorldFromDigitalOceanHiThere
Remove leading spaces using regex:
Hello World From DigitalOcean
Hi There
Remove trailing spaces using regex:
Hello World From DigitalOcean
Hi There
Remove leading and trailing spaces using regex:
Hello World From DigitalOcean
Hi There
결론
이 자습서에서는 Python의 문자열에서 공백 문자를 제거하는 데 사용할 수 있는 몇 가지 방법을 배웠습니다. Python 문자열에 대한 학습을 계속하십시오.