Programming Languages/Python
파이썬 모듈에서 if __name__ == "__main__": 의미
둠드
2019. 6. 28. 16:28
__name__
파이썬의 장점 중의 하나는 다른 사람들이 만든 라이브러리를 쉽게 활용할 수 있다는 점이다. import 문을 통해서 원하는 함수를 쉽게 가져와 사용할 수 있다.
그런데 살펴보다보면 모듈 파일 내에 아래와 같은 형태로 작성된 부분이 존재하는 데,
if __name__ == "__main__":
만약 모듈 파일을 프롬프트 창에서 직접 C:> 모듈.py 를 실행할 경우 __name__이 "__main__"이 참이 되어 문장 내의 구문이 실행된다.
반대로 단순히 import를 할 경우 __name__이 "__main__"이 거짓이 되어 실행되지 않는다.
즉, 모듈을 간단히 테스트하기 위해 주로 사용된다.
그리고 __name__은 모듈 안에서 모듈이름을 반환한다.
모듈.__name__
다음과 같이 라이브러리 파일의 위치와 버전을 확인할 수 있다.
# 라이브러리 위치 확인
import cv2
print (cv2 .__file__)
# 라이브러리 버전확인하기
import h5py
print ('h5py'+h5py .__version__)