를 가지는 큰 모듈을 유지하는 것이 훨씬 유용하고 ‘파이썬스럽다’는 사실을 깨달았다. 해법을
위해 반복하다 보면 가끔은 큰 파일을 작은 파일로 쪼개는 것이 자연스러운 경우를 발견하기도
한다.
물론 이 주장을 지나치게 받아들여서 괴물처럼 하나의 파일에 모든 코드를 다 집어넣으라는 것
은 아니다. 큰 코드 기반에 어울리는 합리적이고 직관적인 모듈과 패키지 구조를 찾는 일은 약
간의 수고가 필요하지만 제대로 일하려면 특히 중요한 과정이다. 각각의 모듈은 내부적으로 응
집해야 하고 각 기능을 위한 클래스와 함수를 찾는 일이 최대한 분명해야 한다.
B.5
IPython
고급 기능
IPython
시스템의 모든 기능을 사용하려면 코드를 작성하는 방식을 조금 바꾸거나 환경 설정
을 깊이 파고들어야 한다.
B.5.1
IPython
친화적인 클래스 만들기
IPython
은 살펴보려는 모든 객체의 문자열 표현을 콘솔 친화적인 모양으로 출력한다. 사전,
리스트, 튜플 같은 많은 객체에 대해 내장
pprint
모듈을 사용하면 멋진 모양으로 출력을 해준
다. 하지만 사용자 정의 클래스의 경우에는 직접 원하는 형식의 문자열 출력을 생성해주어야
한다. 다음과 같은 간단한 클래스가 있다고 하자.
classMessage
:
def
__
init
__
(
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month, and much more.