본문 바로가기
초보자를 위한 Python/5. Python 함수

5.1 파이썬 Main 함수 및 메소드 : def Main()의 이해

by 엔터티 2022. 6. 28.
반응형

파이썬의 Main 함수

Python Main 함수는 모든 프로그램의 시작점입니다. 프로그램이 실행되면 파이썬 인터프리터가 코드를 순차적으로 실행합니다. Main 함수는 Python 프로그램으로 실행될 때만 실행됩니다. 모듈로 가져온 경우 기본 기능을 실행하지 않습니다.

목차


    파이썬에서 def main() 함수는 무엇입니까? 이것을 이해하려면 다음 예제 코드를 고려하십시오.

    def main() 예제 1

    ## 입력
    
    def main():
         print ("Hello World!")
    print ("Entity123")

    예제 1 결과

    여기서 우리는 두 개의 인쇄 조각을 얻었습니다. 하나는 "Hello World!"라는 주요 기능 내에 정의되어 있습니다. 다른 하나는 "Entity123"인 독립입니다. def main() 함수를 실행할 때:

    • "Entity123"만 인쇄됩니다.
    • "Hello World!" 코드가 아닙니다.

    호출 함수 "if__name__== "__main__" 을 선언하지 않았기 때문 입니다.

    main 함수를 정의한 후 if__name__== "__main__"으로 코드를 호출한 다음 코드를 실행해야 "hello world!"라는 출력을 얻을 수 있습니다. 프로그래밍 콘솔에서. 다음 코드를 실행해 보세요.

    def main() 예제 2

    ## 입력
    
    def main():
         print ("Hello World!")
    
    if __name__ == "__main__":
        main()
    
    print ("Entity123")

    main 함수 정의

    • Python 인터프리터는 소스 파일을 읽을 때 그 안에 있는 모든 코드를 실행합니다.
    • 파이썬이 "소스 파일"을 메인 프로그램으로 실행할 때, 특별한 변수(__name__)가 값("__main__")을 갖도록 설정합니다.
    • 파이썬에서 main 함수를 실행하면 "if" 문을 읽고 __name__이 __main__과 같은지 확인합니다.
    • Python에서 "if__name__== "__main__" 을 사용하면 Python 파일을 재사용 가능한 모듈 또는 독립 실행형 프로그램으로 실행할 수 있습니다.

    __name__ 변수와 Python 모듈

    Python main 함수 메서드에서 __name__ 변수의 중요성을 이해하려면 다음 코드를 작성 하세요.

    저는 파일명은 MainFunction.py로 작성 했습니다.

    ## 입력
    
    def main():
         print ("Hello World!")
    
    if __name__ == "__main__":
        main()
    
    print ("Entity123")
    
    print("Value in built variable name is:  ",__name__)

    __main__ direct run

    이제 코드를 모듈로 가져옵니다.

    ## 입력
    
    import MainFunction
    
    print("done")

    __name__ 의 모듈 실행

    C와 마찬가지로 Python은 비교에 ==를 사용하고 할당에 =를 사용합니다. Python 인터프리터는 두 가지 방법으로 main 함수를 사용합니다.

     

    직접실행 : 

    • __name__=__main__
    • if 문 == True 이고 _main_ 스크립트가 실행 됩니다.

    모듈로 가져와 실행 : 

    • __name__ = 모듈파일의 이름
    • if 문 == false이고 __main__의 스크립트는 실행되지 않습니다.

     코드가 실행되면 "if"로 모듈 이름을 확인합니다. 이 메커니즘은 기본 기능이 모듈로 가져올 때가 아닌 직접 실행으로만 실행되도록 합니다.

    위의 예는 Python 3 코드입니다. Python 2를 사용하려면 다음 코드를 사용 하십시오.

    ## 입력 Python 2
    
    def main():
      print "Hello World!"
      
    if __name__== "__main__":
      main()
    
    print "Eneity123"
    Python 3에서는 if__name을 사용할 필요가 없습니다. 다음 코드도 작동합니다.
    ## 입력 Python 3
    
    def main():
      print("Hello World!")
      
    main()
    print("Entity123")

    참고: main 함수를 정의한 후 일부 들여쓰기를 남겨두고 def main(): 함수 바로 아래에 코드를 선언하지 않았는지 확인하십시오. 그렇지 않으면 들여쓰기 오류가 발생합니다.

    반응형

    댓글