Hello Pythonistas! I'm trying to get this program, which works on the command line, to run correctly in the IDLE environment:
import atexit print "This is my program" def exit_func(): print "OK.. that's all folks!" atexit.register(exit_func) print "Program is ending..." When I run this on the command line I see: This is my program Program is ending... OK.. that's all folks! When I run this in IDLE I see: This is my program Program is ending... But the atexit handler is never called. ;-( I tried to fish through the IDLE source to see how the program is actually called, and I decided it looked like it was being invoked with with os.spawnv, but I'm not sure why this would defeat the atexit handler. Anybody know? I'd like to register such a function in my module, but I need it to work in IDLE so that students can easily use it. thanks! -steve -- http://mail.python.org/mailman/listinfo/python-list