Python documentation에서는 외부 수준에서 종료 호출을 인터셉트 할 수 있다고합니다. 그렇다면 "외부 수준에서 가로 채기"는 실제로 여기서 무엇을 의미합니까? 보다 구체적으로 말하면 통화를 차단하는 것이 무엇입니까?sys.exit 문서에서 파이썬 호출을 인터셉트하는 것은 무엇을 의미합니까?
2
A
답변
2
즉, except SystemExit
은 제기 된 예외를 포착하여 파이썬을 종료 할 때 시도 된 호출을 가로채는 것을 의미합니다. sys.exit
은 처리 할 수있는 SystemExit
을 발생시켜 구현됩니다. 적절한 except
절을 사용
:
from sys import exit
try:
exit("Exiting")
except SystemExit as e:
print("Well, no you're not.")
작품 잘하고 실행을 계속된다. 너는 그것을 가로 챘다.
@chepner가 지적한대로 호출이 가로채는 중입니다. exit
에 대한 호출이 완료되었습니다. 결과 예외는 사용자가 제공하는 예외 핸들러에 의해 인터셉트됩니다.
+0
즉, 차단되지 않은 상태에서 통화가 끝나고 프로그램이 종료된다는 것을 의미합니다. –
+0
@ApurvaKunkulol. –
미묘한 의미 론적 노드 : 문서는 'exit'에 대한 호출이 아닌 exit * attempt *를 가로채는 것을 가리 킵니다. 그것은 당신이 가로 채거나 잡을 수있는'exit'에 의해 제기 된 예외입니다. – chepner