티스토리 뷰



파이썬을 스터디하면서 궁금한 것을 그때 그때 구글링을 통해서 해결할 수도 있지만 미리 준비되어 있는 자료를 활용하면 더 효과적인 프로그래밍에 도움이 될 수도 있습니다. 아래의 글들에 이어지는 포스팅입니다.




■ 문서화 자료 보기(Module docs)



파이썬 학습 환경을 설치하고 프로그램 메뉴에 있는 "Module docs"를 실행하면 자료를 이용할 수 있습니다.



"Module docs"는 pydoc.py 가 문서화 서버가 되어(TCP 7464포트 사용) 파이썬 각종 모듈의 문서화 자료를 검색 및 제공 합니다. pydoc 스스로가 작은 웹서버 역할을 하는 셈입니다. 


"Search for" 입력창에 단어를 입력하여 검색한 다음 검색 결과에서 "go to Selected"를 선택하면 아래와 같이 웹 브라우저를 통해 정보를 제공하는 형태로 서비스 합니다. [quit serving]로 서비스를 종료시키면 당연히 웹 브라우저에서도 정보를 검색할 수 없습니다.




■ 매뉴얼 보기(Python Manuals)


파이썬 학습 환경을 설치하면 *.CHM 형태의 매뉴얼도 함께 설치 됩니다. 이 매뉴얼은 윈도우 탐색기에서 조회할 수도 있고 프로그램 메뉴에 있는 "Python Manuals"로도 접근할 수 있습니다.



프로그래머에게 가장 좋은 선생님은 깔끔하게 잘 작성된 소스코드가 아닐까 합니다. 그런데 그 소스 코드를 어렵게 인터넷에서 찾을 필요 없이 매뉴얼과 설치된 라이브러리에서 쉽게 찾아 볼 수 있습니다. 예를 들어 위의 그림과 같이 캘린더 모듈을 검색 해 보면 "Source code:" 항목으로 해당 기능을 수행하는 소스 코드를 쉽게 확인 할 수 있습니다. 저희는 해당 디렉토리에 가서 해당 코드를 참고해서 노하우를 배우기만 하면 되는 것입니다.


def serve(port, callback=None, completer=None):
    import BaseHTTPServer, mimetools, select

    # Patch up mimetools.Message so it doesn't break if rfc822 is reloaded.
    class Message(mimetools.Message):
        def __init__(self, fp, seekable=1):
            Message = self.__class__
            Message.__bases__[0].__bases__[0].__init__(self, fp, seekable)
            self.encodingheader = self.getheader('content-transfer-encoding')
            self.typeheader = self.getheader('content-type')
            self.parsetype()
            self.parseplist()

    class DocHandler(BaseHTTPServer.BaseHTTPRequestHandler):
        def send_document(self, title, contents):
            try:
                self.send_response(200)
                self.send_header('Content-Type', 'text/html')
                self.end_headers()
                self.wfile.write(html.page(title, contents))
            except IOError: pass


위의 예제 코드는 앞서 다루었던 "Module docs"를 서비스하는 pydoc.py의 코드 일부 입니다. 문서화 자료 검색 서비스를 위해서 BaseHTTPServer 클래스를 import 하고 있음을 확인 할 수 있습니다. 이런 프로그램을 따라 한다면 직접 웹서비스를 수행하는 작은 서비스를 만들수도 있는 것입니다.



■ 파이썬을 공부하기 위한 자료들


초등 학교에서 부터 코딩 교육이 강조되면서 파이썬 스터디를 위한 책들도 다양하게 시판되고 있지만,  관련한 무료의 좋은 문서들도 상당히 많으므로 적절하게 사용할 필요가 있습니다.






댓글
댓글쓰기 폼
«   2023/06   »
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30
글 보관함