본문 바로가기
Python/basic

if __name__ == “__main__” 을 쓰는 이유

by 전주혁 2022. 7. 3.

if __name__ == “__main__”

의 의미는 메인 함수의 시작(선언)을 의미합니다.

 

즉 해당 모듈이 import가 된 경우가 아닌

interpreter에서 직접 실행 된 경우에

이 if문을 실행하라는 코드입니다.

 

 

예를 들어 이런 explain.py가 있을 때

//explain.py

def abc():
    print("abc 함수")
    
if __name__ == "__main__":
    print("인터프리터에서 실행")
    print(__name__)
else:
    print("임포트로 실행")
    print(__name__)

 

Case 1은 interpreter에서 실행 했을 때

Case 2는 Import해서 실행 했을 때로 나누어 보자

 

 

Case1의 경우에는

인터프리터에서 실행
__main__

이 출력 된다

 

 

반면

Case2의 경우에는

임포트로 실행
explain

 

이 출력이 된다

 

 

 

결론은

__name__ == __main__의 의미는 interpreter에서 직접 실행했을 경우에 if문의 코드를 실행하라는 명령이 됩니다.

'Python > basic' 카테고리의 다른 글

파이썬 random.choice(seq)  (0) 2022.07.03
파이썬 random.randint(a,b)  (0) 2022.07.03
파이썬 for 반복문  (0) 2022.01.15
파이썬 문자(열) 반복 출력(곱셈)  (0) 2022.01.15
파이썬 두 변수의 값 바꾸기(swap, python)  (0) 2022.01.15