<설명>
아래에 설명을 위한 예제 코드가 있다.
// excuteThisModule.py
def func():
print("function working")
if __name__ == "__main__":
print("직접 실행")
print(__name__)
else:
print("import 되어 사용됨")
print(__name__)
코드를 실행하기 위해선 2가지 방법이 있다,
(1) 인터프리터에서 직접 실행
python3 executeThisModule.py
(2) 다른 module에서 import 하여 실행
// import한 파일의 이름은 executor.py
import executeThisModule.py
executeThisModule.func()
(1)번 방법으로 직접 실행시, __name__ 변수에 __main__ 이 담겨 출력됨
직접실행
__main__
(2)번의 module import방식은, __name__ 변수에 executeThisModule 을 담아 출력.
import 되어 사용됨
executeThisModule
<정리>
__name__ == __main__ 은 interpreter에서 직접 실행했을 때만 if문 내부의 코드를 동작하라는 명령
@@ __name__ 이란? interpreter가 실행 전에 만들어 둔 global 변수
'Python' 카테고리의 다른 글
[Python] Python module source 보기 (0) | 2022.07.15 |
---|
댓글