以下是在一个名为test_atexit.py的脚本中编写的代码。
当我使用Python2.4运行该函数时,会调用exit_function。
当我在IPython中运行相同的程序时,exit_function没有被调用。
为什么在使用IPython运行脚本时exit_function不会被调用,如何使IPython调用exit_function?
def exit_function():
print "I am in exit function"
import atexit
atexit.register(exit_function)
print "I am in main function"
当我使用Python2.4运行该函数时,会调用exit_function。
$python2.4 test_atexit.py
I am in main function
I am in exit function
当我在IPython中运行相同的程序时,exit_function没有被调用。
$ ipython
In [1]: %run test_atexit.py
I am in main function
In [2]:
为什么在使用IPython运行脚本时exit_function不会被调用,如何使IPython调用exit_function?