SW개발/Python

[Python]if __name__ == "__main__" 란?

if __name__ == "__main__" 란?

__name__ 변수는 파이썬이 내부적으로 사용하는 특별한 변수 이름이다. 만약 example.py 파일을 실행할 경우 example.py 의 __name__ 변수에는 __main__ 값이 저장된다. 하지만 다른 파이썬 모듈에서 import 할 경우에는 모듈의 이름 값인 example 이 저장되게 된다.

 

사용하는 이유?

현재 스크립트 파일이 프로그램의 시작점이 맞는지 판단하는 작업이다. 즉, 스크립트 파일이 메인 프로그램으로 사용될 경우와 모듈로 사용될 경우를 구분하기 위해서 사용하게 된다.

 

 

스크립트 파일로 실행하거나 모듈로 사용하는 코드

def add(a, b):
    return a + b
 
def mul(a, b):
    return a * b
 
if __name__ == '__main__':    # 프로그램의 시작점일 때만 아래 코드 실행
    print(add(10, 20))
    print(mul(10, 20))

위 코드의 경우 프로그램의 시작점일 경우에만 print 함수를 실행하게 된다. 모듈로 사용하는 경우에는 어떠한 값도 출력하지 않는다.

 

 

728x90

'SW개발 > Python' 카테고리의 다른 글

[Python]파이썬의 언더스코어(_)에 대하여  (0) 2021.05.08
[Python]패키지란?  (0) 2021.01.21
[Python]모듈이란?  (0) 2021.01.20
[Python]Class 는 왜 필요한가?  (2) 2021.01.19
[Python]split, join 함수  (0) 2020.11.23