파이썬 모듈 #2




모듈을 독립적 실행


앞에서 만든 모듈을 독립적으로 실행 하기 위해 이전 강의에서 만든 tool1.py 프로그램에 다음과 같이 1줄 추가 해 보겠다.


#!/usr/bin/python

# -*- coding: utf-8 -*-

def helloKorea():
    print("안녕하세요.")

def helloEnglish():
    print("Hello")

print("모듈 실행")#추가 부분


tool1.py를 실행 시키면 다음과 같이 출력 된다.


모듈 실행


하지만 tool1.py 모듈을 가져다 쓴 main을 실행시 다음과 같은 문제가 발생 된다.


모듈 실행 <<----------원치 않은 메시지 출력

안녕하세요.

Hello


tool1 모듈을 이용하는 프로그램은 모두 모듈 실행이라는 출력문이 발생 할 것이다.



__name__


위와 같이 내가 만든 모듈이 실행 될때만 모듈의 실행문이 실행 되고 싶을 때 어떻게 해야 할 지 고민을 될 것이다.

이것을 해결 하기 위해 __name__에 대해 알아보자

실행 되는 파일과 __name__이 호출 되는 파일이 일치하면 "__main__" 이라고 출력이 된다.

그래서 다음과 같이 tool1.py을 수정한다.


#!/usr/bin/python

# -*- coding: utf-8 -*-

def helloKorea():
    print("안녕하세요.")

def helloEnglish():
    print("Hello")

if __name__ == "__main__": #<<-- 내가 만든 모듈이 실행 될때만 모듈의 실행문이 실행 되고 싶을때 넣는다.
    print("모듈 실행")


tool1.py를 실행


모듈 실행


main.py를 실행


안녕하세요.

Hello


이전 모듈 설명 가기 ====> click

반응형

'프로그램 > Python' 카테고리의 다른 글

[Python] 예외처리 try, finally, except pass  (0) 2016.11.28
[Python] 예외 처리, try, except, else  (0) 2016.11.26
[Python] 모듈 #1  (0) 2016.11.12
[Python]클래스(3)  (0) 2016.11.02
[Python]클래스 (2)  (0) 2016.09.16

+ Recent posts