我有一个长时间运行的Python程序,在某些时候会引发异常。有没有办法从ipython会话运行此并停止异常,所以我可以检查实时数据?在ipython异常中停止执行Python程序
2
A
回答
3
您可能需要ipython -i yourscript.py
,它将在解释器环境中执行脚本。但是这不会让你检查发生异常的本地环境,例如函数中的局部变量 - 你只能检查全局变量。你可能想这个:
In [1]: %run test.py
<exception occurs>
In [2]: %debug test.py
如果你不熟悉使用PDB,请some docs第一。
编辑感谢托马斯K
0
是的,这取决于你如何设置。你可以导入你的程序并像其他模块一样在try块内运行。
import yourprogram
try:
yourprogram.main_function(args)
except:
print "we blew up, investigate why"
如果您的程序不在函数中,您可能需要将try块放在导入区域。
这种方法的问题是您想要查看的变量可能不再在范围内。我通常在不同的地方使用打印语句或日志消息来找出看起来不像我期待的东西。
+0
如果您采用这种方法,至少应打印出异常和堆栈跟踪 - 这些通常比“我们炸毁”更有用。 – Thomas 2013-02-08 22:52:12
相关问题
- 1. ipython 5.1.0在执行输入后停止
- 2. java小程序停止运行异常
- 3. C# - 句柄异常并停止执行
- 4. Angularjs停止程序执行
- 5. python停止异常通过
- 6. 如何在IDLE中停止Python程序执行
- 7. 异常不停止应用程序
- 8. 程序执行在scanf处停止?
- 9. 在Python 2.7中立即停止线程执行/终止
- 10. 在执行过程中停止IO.popen,使用异常情况不佳
- 11. Python程序终止处理异常
- 12. 异常停止执行,即使在try-catch块内
- 13. Quartz作业停止在StaleObjectStateException异常处执行
- 14. django中的异常停止流程?
- 15. 停止执行ASP.NET应用程序
- 16. 如何停止处理程序执行
- 17. c# - 停止程序执行的错误
- 18. 程序无故执行并停止
- 19. 停止程序的执行打字稿
- 20. 任务执行程序不停止
- 21. Trace32程序停止时执行脚本
- 22. Python自定义异常类应允许在程序执行后继续执行
- 23. 异常停止读取文件python
- 24. 在JavaScript中停止执行
- 25. 线程停止执行
- 26. 如何使用python停止程序的执行?
- 27. 停止Python程序,直到用户执行一个动作
- 28. 停止运行我的Python程序pydoc
- 29. 如何防止异常停止我的程序?
- 30. 防止未处理的异常停止应用程序
或者,当你运行一个程序并引发错误时,只需调用'%debug'跳转到调试器。同样的效果,但你不需要提前计划。 – 2013-02-08 18:55:30
哇,太棒了! – Thomas 2013-02-08 22:52:48