if name ==’main

참고 : 프로그래머 김플 스튜디오


공통

index.py

import hello

print(hello.HI('Seunghan'))


# Case 1

hello.py

def HI(name):
    return f'HI! {name}'
    
print(HI('Seunghan'))


python index.py 실행 시…

  • 2번 출력된다 ( index.py에 있는 print문 출력 O )
HI! Seunghan
HI! Seunghan


# Case 2

hello.py

def HI(name):
    return f'HI! {name}'

if __name__ =='__main__':
    print(HI('Seunghan'))


python index.py 실행 시…

  • 2번 출력된다 ( index.py에 있는 print문 출력 X )
HI! Seunghan


원리 : Name ? Main?

해당 py 파일을 실행시키면, 해당 파일 내에서 실행된 __name____main__이 된다

( 자기 자신을 실행시키면 main이 된다! )


따라서, hello.py 자체를 수행시키는 것이 아니라,

해당 파일을 패키지로써 사용해서 불러오는 경우, if __name__ =='__main__': 부분은 수행되지 않는다!