>  기사  >  백엔드 개발  >  Python에서 main 메소드를 사용하는 방법

Python에서 main 메소드를 사용하는 방법

王林
王林앞으로
2023-05-05 13:25:063070검색

텍스트 시작

if name == "main": Java의 main() 메소드와 마찬가지로 Python 프로그램의 입구로 간주할 수 있지만 완전히 정확하지는 않습니다.

실제로 Python 프로그램은 위에서 아래로 한 줄씩 실행됩니다. .py 파일에서는 def 뒤에 정의된 함수를 제외한 코드는 "main" 메서드의 내용으로 간주되어 위에서 아래로 실행됩니다. . 단지 멋진 "hello world"를 작성하고 함수를 작성하고 싶지 않다면 그냥 인쇄(‘hello world’)하면 됩니다. 이것은 "프로그램"이며 소위 "메인"이 필요하지 않습니다. " 메소드 항목입니다. 물론 함수를 테스트하는 경우 .py 파일에 if name == "main"이라고 쓴 다음 함수를 호출해야 합니다.

예를 들어 다음 hello.py 파일은

print("first")
 
 
def sayHello():
    str = "hello"
    print(str);
    print(__name__+'from hello.sayhello()')
 
 
if __name__ == "__main__":
    print ('This is main of module "hello.py"')
    sayHello()
    print(__name__+'from hello.main')

실행 결과:

first
This is main of module "hello.py"
hello
__main__ from hello.sayhello()
__main__ from hello.main

무슨 말인지 이해하셨나요? 인쇄의 첫 번째 줄을 먼저 실행한 다음 "entry"에 있는 항목을 실행하세요

그런데, name == "main"이면 문장은 무엇을 의미하나요?

name__은 실제로 현재 py 파일을 호출하는 방법을 나타내는 내장 속성입니다. 위 예제가 실행되면 전체 프로그램에서 __name__ 속성이 어디에 있든 값은 __main입니다. 이 hello.py 파일을 world .py와 같은 다른 .py 파일(즉, 가져오기)에 모듈로 가져옵니다. , world.py를 실행 중입니다. 이때 hello.py의 __name__ 속성은 if 판단이 실패하므로 소위 입구가 실행되지 않습니다. main() 메소드.

파이썬은 한줄씩 실행한다고 언급했는데, import hello를 읽으면 hello.py도 실행하게 됩니다. 예를 들어 다음 world.py 파일을 실행하면

import hello#上一个例子的hello.py
 
if __name__ == "__main__":
    print ('This is main of module "world.py"')
    hello.sayHello()
    print(__name__)

실행 결과:

first
This is main of module "world.py"
hello
hellofrom hello.sayhello()
main

를 볼 수 있습니다. hello.py의 첫 번째 print('first') 줄이 직접 실행되고, hello.py의 __name__도 hello를 출력하고, world.py의 이름은 __main__

을 출력합니다.

위 내용은 Python에서 main 메소드를 사용하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 yisu.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제