파이썬에서 공백제거는 많이 쓰이는 함수이며, 눈에 보이지 않는 공백때문에 에러가 발생하기도 합니다. 쉽게 trim() 으로 생각할 수 있는데 strip() 을 사용해야 한다.
공백 정리 함수
공백 정리 합수를 간단하게 정리해보면,
- replace() 모든 공백 제거
- strip() 왼쪽,오른쪽 공백 제거
- lstrip() 왼쪽 공백제거
- rstrip() 사용 오른쪽 공백 제거
greeting = " Hello! "
stripped_greeting = greeting.strip()
print(stripped_greeting,"How are you?")
#output
#Hello! How are you?
장고에서 API body 에 붙어오는 데이터 처리를 위한 예제 코드도 하나 추가해 둔다.
if body.box_prefix is not None:
strip_box_prefix = body.box_prefix.strip()
print("strip_box_prefix", strip_box_prefix)
if strip_box_prefix: # 없거나 빈문자열 2개다 체크
item.box_prefix = strip_box_prefix
else:
item.box_prefix = "Box"
else:
item.box_prefix = "Box"
replace 사용시 유의점
아래 예제 처럼 해도 되는데, 문제는 원하지 않는 문자열 가운데 있는 공백도 다 없어진다는 것이다.
양쪽에 trim() 형태의 결과를 원하면 replace 대신에 꼭 strip()을 활용해야 할 듯
공백없는문자열 = 공백있는문자열.replace(" ", "")
이렇게 첫 번째 매개변수에 " " 공백을 넣고,두 번째 매개변수에 "" 빈 문자열을 넣으면
'공백을 -> 빈 문자열로 변경하겠다'라는 명령이 되기 때문에
공백 있는 문자열의 공백이 사라지게 됩니다.
출처: https://blockdmask.tistory.com/568 [개발자 지망생:티스토리]
지금까지 파이썬에서 공백 제거를 위한 함수 strip()에 대해 알아보았다.
댓글