【发布时间】:2017-01-19 17:31:20
【问题描述】:
我有一个 Python 脚本,我想将它执行到某个点,然后停止,并保持解释器打开,这样我就可以看到它定义的变量等。
我知道我可以生成一个异常,或者我可以通过运行pdb.set_trace() 来调用调试器,然后停止我当前使用的调试器。
...但是是否有一个命令可以停止脚本,就好像它已经结束了一样?这相当于注释整个脚本的其余部分(但我不想这样做),或者将早期的 return 语句放在函数中。
似乎必须存在这样的东西,但我到目前为止还没有找到它。
编辑:我的用例的更多细节
我通常在 Spyder 中使用常规的 Python 控制台。 IPython 似乎是件好事,但是(至少对于我目前使用的版本,2.2.5)一些普通控制台的功能在 IPython 中不能很好地工作(自省、自动完成)。 通常情况下,我的代码会生成 matplotlib 图形。在调试模式下,这些无法更新(据我所知),这就是为什么我需要完全脱离脚本,而不是解释器)。 调试器的另一个限制是我不能在其中执行循环:您可以将循环的代码复制/粘贴到常规控制台中并让它执行,但这在调试器中不起作用(至少在我的 Spyder 中)版本)。
【问题讨论】:
-
不能说任何特定的命令,但 PyCharm 是一个非常可爱的 IDE,它可以让你做这样的事情。它甚至可以让您在遇到断点时对范围内的任何变量计算任意表达式。
-
为什么不直接使用 pdb 并在您希望代码停止的位置设置断点?
标签: python python-2.7