如何在Spyder中退出脚本?

时间:2014-09-19 07:16:13

标签: python spyder

我正在使用WinPython的Spyder。当我使用命令exit()创建新脚本并在那里运行时,此命令会终止内核:

  

内核似乎意外死亡。使用“重新启动内核”继续使用此控制台。

在此运行时环境中停止脚本的正确方法是什么?

4 个答案:

答案 0 :(得分:11)

一个人可以

  • 通过引发自定义异常(例如

    )退出脚本
    raise Exception('exit')
    

  • 将代码封装到main函数中并在其中使用return

如果有人不想更改脚本,可以

  • 切换到"在新的专用Python解释器中执行"或

  • 在IPython控制台注册一个退出处理程序:

    def exit_handler(): raise Exception("exit()"), get_ipython().ask_exit = exit_handler
    

答案 1 :(得分:4)

正如Robert Pollak所说,Spyderlib Issue 1974 #4中的评论是更好的解决方案。只需定义一个导致异常的函数,如果你想在spyder中停止执行脚本,就调用这个函数。

def f(): raise Exception("Found exit()")

答案 2 :(得分:0)

要在没有警告的情况下中断Spyder的执行,可以调用

raise SystemExit(0)

答案 3 :(得分:0)

可以使用内置解决方案:

import sys

sys.exit()