파이썬에서 __name__ == '__main__'은 무엇입니까 🤯

if __name__ == '__main__':
    pass


YouTube의 많은 사람들과 Python의 내장 모듈에는 Python을 배우려는 대부분의 초보자를 혼란스럽게 하는 이 진술이 있습니다. 이 게시물에서 나는 __name__이 무엇이며 왜 파이썬에서 사용되는지 명확히 하려고 노력할 것입니다.

__name__ 이(가) 무엇입니까?



Python 스크립트나 파일을 실행하기 전에 Python 자체에서 일부 특수 변수를 설정하며 이 __name__은 변수 중 하나입니다. 이 변수의 아름다움은 파일을 실행하는 방법에 따라 변수의 값을 설정한다는 것입니다. 예를 들어 파일을 직접 실행하면 값이 __main__이 되지만 이 파일을 다른 파일로 가져와서 실행하면 파일 이름이 값이 되고 다른 파일은 __main__이 됩니다. 값.

자세히 살펴 보겠습니다.


first.pysecond.py이라는 두 개의 파일을 만들어 보겠습니다.first.py 파일에 다음 코드 추가 👇

def main():
    print('first.py file __name__ :', __name__)

if __name__ == '__main__':
    main()


위의 코드는 매우 간단합니다. __name____main__과 같으면 main() 메서드를 실행할 것입니다. 즉, 파일이 직접 실행될 때 __name__ 변수가 __main__과 같을 때만 main() 메서드가 실행됩니다. .
first.py 파일만 실행하면 다음과 같은 결과가 나타납니다.

first.py file __name__ : __main__


이제 다음 코드를 second.py 파일에 추가하세요 👇

import first

print('second.py file __name__ :', __name__)

second.py 파일을 실행하면 다음과 같은 결과가 나타납니다.

second.py file __name__ : __main__


자세히 살펴보면 first.py 모듈을 second.py으로 가져오고 있지만 첫 번째 main() 메서드에서 출력을 얻지 못하고 있습니다. 이는 첫 번째 파일이 직접 실행되지 않기 때문에 __name____main__ 과 같지 않고 실제로는 first 과 같습니다.

그러면 first.py __name__ 변수를 어떻게 얻을 수 있습니까?

그것을 얻으려면 아래와 같이 second.py 코드를 변경하십시오 ..

import first

first.main()
print('second.py file __name__ :', __name__)


그러면 다음과 같은 결과를 얻을 수 있습니다 👇

first python file __name__ : first
second.py file __name__ : __main__

__name__ 변수에 대한 기본적인 아이디어를 얻었기를 바랍니다.
읽어주셔서 감사합니다 💗

좋은 웹페이지 즐겨찾기