코드의 특정 컴포넌트에 대한 문서화 가능한 많은 docstring을 추가하는 것이 좋다.

def data_from_response(response):
    """response에 문제가 없다면 response의 payload를 반환
    
    - response 사전의 예제::
    {
        "status": 200, # <int>
        "timestamp": "....", # 현재 시간의 ISO 포맷 문자열
        "payload": {...} # 반환하려는 사전 데이터
    }
    
    - 반환 사전 값의 예제::
    {"data": {..}}
    
    - 발생 가능한 예외:
    - HTTP status가 200이 아닌 경우 ValueError 발생
    """

파이썬은 동적 타이핑을 하기 때문에 예상되는 함수의 입출력을 문서화하면 사용시 함수의 종작을 이해하기 쉽다.