RoJQ Asked:2024-03-21 22:06:04 +0000 UTC2024-03-21 22:06:04 +0000 UTC 2024-03-21 22:06:04 +0000 UTC 如何处理所有情况下的进程终止? 772 Python 3.8 中是否有某种重写的系统函数(或类似的函数)在程序退出时被调用,无论是 Exception 还是只是程序结束。是否有可能,当退出父进程的内核时,就在结束之前,启动一个将执行我的指令的函数。 python 1 个回答 Voted Best Answer kristal 2024-03-21T23:04:49Z2024-03-21T23:04:49Z atexit我最近从标准的 python 库集中了解到了这样一个模块。基本用法: import atexit def my_any_func(): print("bye-bye!") atexit.register(my_any_func) 我们只需注册程序退出时要执行的函数,当发生这种情况时它们将自动执行。 通过块的另一个选择try-except-finaly: if __name__ == '__main__': try: main() finally: my_any_func() 在应用程序中有一个入口点被认为是一种很好的做法,如果将其包装在一个块中,我们将得到当主脚本完成其工作时将调用try-except-finaly其中的代码。finaly 好吧,评论中向您建议了另一个选项: usesys.exit()和 catch SystemExit,但在我看来,这不如前两个选项那么优雅。
atexit我最近从标准的 python 库集中了解到了这样一个模块。基本用法:我们只需注册程序退出时要执行的函数,当发生这种情况时它们将自动执行。
通过块的另一个选择
try-except-finaly:在应用程序中有一个入口点被认为是一种很好的做法,如果将其包装在一个块中,我们将得到当主脚本完成其工作时将调用
try-except-finaly其中的代码。finaly好吧,评论中向您建议了另一个选项: use
sys.exit()和 catchSystemExit,但在我看来,这不如前两个选项那么优雅。