<개인공부>/[Python]

[python] 파이썬 공백 제거 (replace, strip) 2가지 방법

사용자 BlockDMask 2021. 10. 5. 21:55
반응형

안녕하세요. BlockDMask입니다.
오늘은 파이썬 문자열에서 공백을 제거하는 2가지 방법에 대해서 알아보겠습니다.

<목차>
1. 파이썬 replace 함수 이용해서 공백 제거
2. 파이썬 strip함수 이용 해서 공백 제거 (rstrip, lstrip)

 

1. 파이썬 공백 제거 - 문자열 replace 함수


문자열.replace(old, new)

문자열.replace(없앨 문자, 바꿀 문자) 이런 식으로 
첫 번째 인자에는 없앨 문자, 문자열을 넣고
두 번째 인자에는 바꿀 문자, 문자열을 넣습니다.
그럼 우리가 원하는 문자로 변경한 새로운 문자열을 반환합니다.

정리를 다시 해보면
결과문자열 = 문자열.replace(old, new) 이런 형태가 되겠죠?

우리는 문자열 클래스에 존재하는 replace 메서드를 이용해서 공백을 제거해보겠습니다.

공백없는문자열 = 공백있는문자열.replace(" ", "")
이렇게 첫 번째 매개변수에 " " 공백을 넣고,두 번째 매개변수에 "" 빈 문자열을 넣으면
'공백을 -> 빈 문자열로 변경하겠다'라는 명령이 되기 때문에
공백 있는 문자열의 공백이 사라지게 됩니다.

코드로 한번 볼까요?

# 공백 있는 문자열
name = "  B l o ck DM a  s   k  "

# replace 함수를 이용해서 공백 제거
result = name.replace(" " , "")

print(f"공백 있는 문자열 : {name}")
print(f"공백 제거한 문자열 : {result}")

이렇게 결과를 보면 문자열의 모든 공백이 제거된 것을 볼 수 있습니다.

 

 

2. 파이썬 공백 제거 - 문자열 strip 함수 (lstrip, rstrip)


이번에는 파이썬 문자열의 strip 메서드를 이용해서 공백을 제거해 보겠습니다.

문자열.strip()

모든 공백을 제거할 수 있는 replace 함수와 달리 양쪽 끝에 있는 공백을 제거할 수 있습니다.
해당 함수는 문자열 양 끝에 있는 공백을 제거해주고,
공백을 제거한 새로운 문자열을 반환합니다.

strip 함수는 친구들이 존재하는데 lstrip, rstrip 함수가 그 친구들입니다.
함수 이름을 살펴보면 left + strip, right + strip 입니다.

문자열.lstrip() 함수는 문자열 왼쪽에 있는 공백을 없애주고
문자열.rstrip() 함수는 문자열 오른쪽에 있는 공백을 없애줍니다.

마찬가지로 공백을 제거한 새로운 문자열을 반환합니다.
문자열 제거 예제 코드를 한번 볼까요?

# 공백 있는 문자열
name = "  B l o ck DM a  s   k  "

# 양쪽 공백 제거
result1 = name.strip()

# 왼쪽 공백 제거
result2 = name.lstrip()

# 오른쪽 공백 제거
result3 = name.rstrip()

print(f"name          : |{name}|")
print(f"name.strip()  : |{result1}|")
print(f"name.lstrip() : |{result2}|")
print(f"name.rstrip() : |{result3}|")

양쪽 끝에 있는 공백이 제거되었는지를 쉽게 알기 위해서, 문자열 양끝에 " | " 문자를 집어넣었습니다.
공백이 비었는지 아닌지 구분이 잘 되시나요?

strip() 함수는 양 끝의 공백을 없애주었고,
lstrip() 함수는 왼쪽 공백 제거, rstrip()은 오른쪽 공백을 제거해주는 것을 볼 수 있습니다.

문자열 내의 모든 공백을 제거할 수 있는 reaplce 함수와는 달리,
strip() 친구들은 문자열의 "양 끝"의 공백을 다룬 다는 것을 알아두시면 좋을 것 같습니다.

 

 

이상으로. 오늘은 파이썬에서 공백을 제거하는 방법(replace, strip)에 대해서 알아보았습니다.
문자열에는 참 많은 함수(메서드)들이 있습니다.
문자열 총 정리 [바로가기1], [바로가기2] 포스팅으로 가면 여러 함수들을 확인해 볼 수 있습니다.
감사합니다.

반응형