Python에서 프로그램을 종료하는 방법
-
quit()
메서드로 Python 프로그램 종료 -
exit()
메서드로 Python 프로그램 종료 -
sys.exit()
메서드로 Python 프로그램 종료 -
os.exit()
메서드로 Python 프로그램 종료 - 결론
PHP에서와 마찬가지로die()
명령은 실행중인 스크립트를 종료합니다. 마찬가지로 Python 스크립트는quit()
,exit()
,sys.exit()
,os.exit()
와 같은 다른 내장 함수를 사용하여 종료 할 수 있습니다. 파이썬은 하향식 순서로 명령을 실행하고 기준에 따라 코드에 정의 된 루프를 실행합니다. 그러나 파이썬 인터프리터가 EOF
파일의 끝에 도달하면 더 많은 명령어를 읽을 수 없으므로 실행을 종료합니다.
이 기사에서는 Python으로 프로그램을 종료하는 방법을 소개합니다.
quit()
메서드로 Python 프로그램 종료
내장 함수를 사용하여 Python 스크립트를 종료하는 쉽고 효과적인 방법은quit()
메소드입니다. 이 기능은 파이썬 인터프리터에서만 사용할 수 있습니다. 이 명령이 실행되면 OS에서SystemExit
예외가 생성됩니다. 전체 예제 코드는 다음과 같습니다.
for test in range(10):
if test == 5:
print(quit)
quit()
print(test)
출력:
0
1
2
3
4
Use quit() or Ctrl-Z plus Return to exit
exit()
메서드로 Python 프로그램 종료
기능은quit()
메소드와 동일하지만이를 위해 Python 라이브러리를 가져올 필요는 없습니다. 전체 예제 코드는 다음과 같습니다.
for test in range(10):
if test == 5:
print(exit)
exit()
print(test)
출력:
0
1
2
3
4
Use exit() or Ctrl-Z plus Return to exit
sys.exit()
메서드로 Python 프로그램 종료
이 메서드는quit()
및exit()
메서드보다 낫습니다. 구문은 다음과 같습니다.
sys.exit([arg])
arg
는 구문에서 선택 사항입니다. 대부분 정수 값이지만 문자열 값도 전달할 수 있습니다. 0 인수 값은 성공적인 종료에서 가장 좋은 경우로 간주됩니다. 전체 예제 코드는 다음과 같습니다.
import sys
weight = 70
if weight < 80:
sys.exit("weight less than 80")
else:
print("weight is not less than 80")
출력:
SystemExit: weight less than 80
os.exit()
메서드로 Python 프로그램 종료
이 방법은 스크립트의 자식 프로세스와 같은 특별한 상태로 프로세스를 종료하는 데 사용됩니다. os.fork()
메소드를 사용하여 자식 프로세스를 생성 할 수 있습니다. os.fork()
명령은 Linux에서 효율적으로 작동합니다. 그러나 Windows 용 Cygwin을 사용해야합니다. 참조는 여기입니다.
전체 예제 코드는 다음과 같습니다.
import os
parent_id = os.fork()
if parent_id > 0:
print("\nIn parent process")
info = os.waitpid(parent_id, 0)
if os.WIFEXITED(info[1]):
code = os.WEXITSTATUS(info[1])
print("Child's exit code:", code)
else:
print("child process")
print("Process ID:", os.getpid())
print("Test Code")
print("Child exiting..")
os._exit(os.EX_OK)
os.wait()
메소드는 종료 상태와 함께 하위 프로세스 ID를 반환합니다. os._exit()
메소드를 사용하여 종료 코드를 얻습니다.
출력:
AttributeError: module 'os' has no attribute 'fork'
결론
sys.exit()
메소드는 위의 모든 메소드 중에서 선호됩니다. 반면에os.exit()
명령은 특정 시나리오 및 즉시 종료에 사용해야합니다.