logo

Python 종료 명령: quit(), exit(), sys.exit() 및 os._exit()

quit(), exit(), sys.exit() 및 os._exit() 함수는 Python 인터프리터가 종료되고 스택 추적이 인쇄되지 않는 SystemExit 예외를 발생시키는 것과 거의 동일한 기능을 갖습니다. 조기 종료를 가로채고 정리 활동을 수행하기 위해 예외를 포착할 수 있습니다. 잡히지 않으면 통역사는 평소대로 종료됩니다. 이번 글에서는 종료하는 방법에 대해 알아보겠습니다. 파이썬 프로그램.

Python 종료 명령이란 무엇입니까?

Python의 종료 명령은 Python 프로그램의 실행을 종료하거나 Python 인터프리터를 종료하는 데 사용되는 메서드 또는 명령문을 참조합니다. 일반적으로 사용되는 종료 명령에는 ` sys.exit() `,` 출구() `, 그리고` 그만두다() `. 이러한 명령은 프로그램이나 인터프리터를 중지하여 사용자가 실행을 정상적으로 종료할 수 있도록 합니다. Python에는 종료를 위한 몇 가지 명령이 있습니다. 여기서는 이러한 명령을 간략하게 논의하고 있습니다. 명령은 다음과 같습니다.



  • Python의 종료()
  • Python의 종료()
  • Python을 사용하는 sys.exit()
  • os._exit() 파이썬에서

메모 : 대화형 모드(터미널에서 Python 실행)에서는 일반적으로 다음을 입력하여 종료할 수 있습니다.exit()>또는quit()>괄호 없이.

quit() 함수를 사용한 Python 종료 명령

그만큼 그만두다() 함수는 사이트 모듈을 가져온 경우에만 Python에서 종료 명령으로 작동하므로 프로덕션 코드에서 사용하면 안 됩니다. 프로덕션 코드는 실제 상황에서 대상 사용자가 코드를 사용하고 있음을 의미합니다. 이 함수는 인터프리터에서만 사용해야 합니다. 배후에서 SystemExit 예외가 발생합니다. 인쇄하면 메시지가 표시되고 Python에서 프로그램이 종료됩니다.

예: 제공된 코드에서i>5와 같으면 인쇄됩니다. 그만두다 다음을 사용하여 Python 인터프리터를 종료하려고 시도합니다. quit()> 기능. 만약에i>5와 같지 않으면 다음 값을 인쇄합니다.i>.



파이썬3






for> i>in> range>(>10>):> >if> i>=>=> 5>:> >print>(quit)> >quit()> >print>(i)>

>

>

123movies와 유사한 영화 웹사이트

산출:

0 1 2 3 4 Use quit() or Ctrl-D (i.e. EOF) to exit>

Python 종료 명령 사용 종료() 함수

Python의 exit()는 site.py에 있는 경우 Python의 종료 명령으로 정의되며 사이트 모듈을 가져온 경우에만 작동하므로 인터프리터에서만 사용해야 합니다. Python을 더욱 사용자 친화적으로 만드는 것은 quit()의 동의어와 같습니다. 또한 Python에서 프로그램을 인쇄하고 종료할 때 메시지를 제공합니다.

: 제공된 코드에서i>5와 같으면 인쇄됩니다. 출구 다음을 사용하여 Python 인터프리터를 종료하려고 시도합니다. exit()> 기능. 만약에i>5와 같지 않으면 다음 값을 인쇄합니다.i>.

파이썬3




for> i>in> range>(>10>):> >if> i>=>=> 5>:> >print>(exit)> >exit()> >print>(i)>

>

>

산출:

0 1 2 3 4 Use exit() or Ctrl-D (i.e. EOF) to exit>

Python을 사용하는 sys.exit([arg])

quit() 및 exit()와 달리 sys.exit()는 sys 모듈의 프로덕션 코드에 사용하기에 좋은 경우 항상 사용할 수 있는 경우 Python에서 종료 명령으로 간주됩니다. 선택적 인수 arg는 종료 또는 다른 유형의 객체를 제공하는 정수일 수 있습니다. 정수인 경우, 0은 성공적인 종료로 간주됩니다.
메모: 문자열을 sys.exit() 메서드에 전달할 수도 있습니다.

예: 주어진 코드에서, sys.exit('Age less than 18')> 줄은 메시지로 Python 스크립트를 종료합니다. 18세 미만 변수라면age>18보다 작습니다.age>18 이상이면 인쇄됩니다. 나이는 18세 이상입니다. 이 코드는 특정 조건이 충족되면 특정 메시지와 함께 스크립트를 종료하는 데 사용됩니다. 그리고 Python에서 프로그램을 중지합니다.

파이썬3




import> sys> age>=> 17> if> age <>18>:> >sys.exit(>'Age less than 18'>)> else>:> >print>(>'Age is not less than 18'>)>

>

>

산출:

An exception has occurred, use %tb to see the full traceback. SystemExit: Age less than 18>

os._exit(n) 파이썬

그만큼 os._exit() Python의 메소드는 정리 핸들러 호출, stdio 버퍼 플러시 등을 수행하지 않고 지정된 상태로 프로세스를 종료하는 데 사용됩니다.

메모: 이 메소드는 일반적으로 os.fork() 시스템 호출 이후 하위 프로세스에서 사용됩니다. 프로세스를 종료하는 표준 방법은 sys.exit(n) 메서드입니다.

: 이 예에서 아래 Python 코드는 다음을 사용하여 부모-자식 프로세스 관계를 만듭니다. os.fork()>. 상위 프로세스는 하위 프로세스가 완료될 때까지 기다렸다가 종료 코드를 검색하는 반면, 하위 프로세스는 메시지를 인쇄하고 성공 상태 코드로 종료됩니다.

파이썬3




import> os> pid>=> os.fork()> if> pid>>0>:> > >print>(>' In parent process'>)> >info>=> os.waitpid(pid,>0>)> >if> os.WIFEXITED(info[>1>]) :> >code>=> os.WEXITSTATUS(info[>1>])> >print>(>'Child's exit code:'>, code)> > else> :> >print>(>'In child process'>)> >print>(>'Process ID:'>, os.getpid())> >print>(>'Hello ! Geeks'>)> >print>(>'Child exiting..'>)> > >os._exit(os.EX_OK)>

>

>

산출:

In child process Process ID: 25491 Hello ! Geeks Child exiting.. In parent process Child's exit code: 0>

결론

위의 네 가지 종료 함수 중에서 sys.exit()가 주로 선호되는 이유는 exit() 및 quit() 함수는 프로덕션 코드에서 사용할 수 없는 반면 os._exit()는 즉각적인 종료가 필요한 경우에만 특수한 경우에 사용되기 때문입니다.