메서드 체이닝
1. 메서드 체이닝(Method Chaining)
메서드 체이닝이란 연속으로 메서드를 호출하는 것을 말합니다. 각 메서드는 결괏값이 있습니다. 이 결괏값에 메서드를 다시 호출하는 방식으로 연속적인 작업을 수행합니다.
다만 너무 과하게 사용하면 가독성을 해칠 우려가 있으며 채이닝 설계가 제대로 되어 있지 않으면 오류가 날 수 있으니 적절하게 사용해주세요.
1.1 문자열의 메서드 체이닝
문자열을 처리할 때는 위처럼 여러 개의 메서드를 연속적으로 사용하는 경우가 많습니다. 위의 코드에서는 문자열의 양쪽 공백을 제거한 후, 소문자로 변경하고, 마지막으로 "world"를 "python"으로 치환했습니다.
아래와 같이 replace를 여러번 하는 것도 일반적으로 자주 사용되는 코드입니다.
'helloworld'
'helloworld'
다만 위와 같이 여러 개의 문자를 치환하거나, 삭제할 경우 문자열 메서드인 translate를 사용해주세요. 이보다 복잡도가 늘어나면 정규 표현식을 공부해야 합니다. 정규 표현식은 뒤 챕터에서 다루게 됩니다.
다른 언어처럼 개행을 해서 사용하고 싶다면 아래처럼 사용하시면 됩니다.
아래처럼 중간 공백을 허용합니다.
메서드 체이닝을 통해 한 줄이 79자 이상이 넘지 않도록 해주세요. PEP8는 한 줄에 79자를 넘지 않도록 권고합니다. colab에 보면 회색선이 그어져 있습니다. 여기까지가 79자 입니다.
1.2 나아가기
위 작업은 제대로 작동하지 않는 코드입니다. 이는 아래의 순서로 진행이 됩니다.
하지만 리스트에서는 replace라는 메서드가 없기 때문에 오류가 나는 것입니다. 이처럼 앞에서부터 순서대로 메서드의 결괏값이 무엇이 나오는지 확인하고 그에 따른 올바른 메서드를 사용해야 합니다.