Nuevo en la versión 2.0.
El módulo atexit define una sencilla función para el registro de funciones de limpieza. Las funciones así registradas son automáticamente ejecutadas tras una finalización normal del intérprete.
Nota: las funciones registradas a través de este módulo no se llaman cuando se mata el programa por una señal, cuando se detecta un error fatal interno de Python, o cuando se llama a la función os._exit().
Esta es una interfaz alternativa a las funciones poporcianadas por
por la variable sys.exitfunc
.
Nota: es poco probable que este módulo funcione correctamente si
en el código se emplea sys.exitfunc
. Es posible que otros
módulos del núcleo de Python usen atexit sin que el programador
lo sepa. Quienes empleen sys.exitfunc
deben cambiar a
atexit. La manera más simple de realizar este cambio es
importar el módulo atexit y registrar la función enlazada a
sys.exitfunc
.
Con la terminación normal del programa (por ejemplo, si se llama a la función sys.exit() o termina la ejecución del módulo principal) todas las funciones registradas se llaman, empezando por la última y terminando por la primera. Se asume que los módulos de nivel más bajo se importan antes que aquellos de nivel más alto, de ahí que sean limpiados más tarde.