더북(TheBook)

4.2.12 replace를 사용하여 문자를 제거한다

문자열에서 특정 문자를 빠르게 제거하려면 replace 함수를 사용하여 해당 문자를 빈 문자열로 교체해 보자.

예를 들어 10장에는 사용자가 “1/2”와 같이 분수를 의미하는 문자열을 입력하는 코드 예시가 있다. 하지만 만약 사용자가 “1 / 2”와 같이 필요 없는 빈칸을 입력했다고 해 보자. 충분히 문제가 될 수 있다. 다음 코드는 문자열 s의 빈칸을 replace 함수로 삭제하고 있다(이 방법은 단순한 스트리핑(stripping)을 넘어선다).

s = s.replace(' ', '')

이와 비슷한 코드로 불필요한 문자나 부분 문자열을 삭제할 수 있을 것이다. 하지만 한 번에 하나씩만 가능하다. 만약 한 번에 모든 모음을 삭제하고 싶다고 가정해 보자. 이런 경우에는 다음과 같이 리스트 함축을 사용하면 된다.

a_list = [c for c in s if c not in 'aeiou']
s = ''.join(a_list)
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.