在sys.exit文档中拦截Python调用意味着什么?
在Python中,据说可以在外部级别拦截exit调用。那么“外部拦截”在这里究竟意味着什么呢?在sys.exit文档中拦截Python调用意味着什么?,python,python-3.x,exit,sys,Python,Python 3.x,Exit,Sys,在Python中,据说可以在外部级别拦截exit调用。那么“外部拦截”在这里究竟意味着什么呢? 更具体地说,拦截调用是什么意思?这意味着除SystemExit之外的将捕获引发的异常,从而在退出Python时拦截尝试的调用sys.exit通过提升来实现,您可以处理提升 使用适当的除外条款: from sys import exit try: exit("Exiting") except SystemExit as e: print("Well, no you're not.")
更具体地说,拦截调用是什么意思?这意味着除SystemExit之外的
将捕获引发的异常,从而在退出Python时拦截尝试的调用sys.exit
通过提升来实现,您可以处理提升
使用适当的除外
条款:
from sys import exit
try:
exit("Exiting")
except SystemExit as e:
print("Well, no you're not.")
工作正常,继续执行。你截获了
正如@chepner所指出的,呼叫没有被拦截;对退出的调用已完成。由此产生的异常被您提供的except处理程序截获。微妙语义节点:文档指的是截获退出尝试,而不是对exit
的调用。这是由exit
引发的异常,您可以拦截/捕获。这意味着,如果未拦截,调用将通过,程序将退出,对吗?