我正在使用Spyder IDE 3.0.0版。我的python版本是2.7.12。 出于某种原因,atexit机制不适用于这个特定的IDE。
代码
import atexit
def done():
print '2'
atexit.register(done)
print '1'
结果
当我在PyCharm或Windows cmd中运行脚本时,它会打印:
1
2
当我从Spyder运行它时,没有调用完成功能,并且不打印2。最终结果是:
1
有人知道为什么会这样,我该如何解决?
谢谢!
答案 0 :(得分:0)
如果你需要使用atexit.register(),你可以调用atexit._run_exitfuncs,如回答:
https://stackoverflow.com/a/21634308/6669602
(或者你可以重新启动内核)