我在一些工作中尝试Eclipse+PyDev对。(EclipseV3.5.0+Pydevv1.5.6)我找不到将所有变量公开到PyDev控制台的方法(通过PyDev控制台->;当前活动编辑器选项的控制台),我使用一个简单的代码来描述这个问题。当我一步一步地浏览代码时,我无法从控制台访问我的“x”变量。它是在变量选项卡上查看的,但这并不是我真正想要的。
任何帮助都是感激的。
请参阅我的屏幕截图以获得更好的描述:
编辑:
假设添加一个简单的func,如:
def myfunc(x):
return x**x
当我调试代码中添加的函数时,我可以从控制台轻松访问myfunc。(键入myfunc,在自动执行后它将可用:
>>> from part2.test import myfunc
>>> myfunc
然后,当我执行myfunc(5)时,它的行为就像在Python解释器中一样。以类似的方式访问变量对于调试代码是非常有用的。我有很大的数组,我在调试过程中做各种测试和操作。比如: 得到我的x并做x.sum(),然后再做x[::10],或者与其他数组进行转置操作观察结果、实验等。。。
希望会有更好的解决办法。
对于这种探索性调试,我喜欢使用pdb,电池包括调试器。我没有在PyDev内部使用过它,所以我不知道它是如何组合在一起的。我猜它会做你想做的事。其用法示例:
这将在执行return语句之前中断,并允许您使用完整的Pythonic语句来确定发生了什么。我使用它就像一个交互式的打印语句:设置我想深入研究的地方,检查值和计算结果,并逐步观察它的发生。也许这是一种懒散的调试方式,但有时在做出不那么懒散的决定之前,您需要更多的信息:-)
我通常引用的页面位于Python Conquers The Universe,它还链接了其他一些信息源。
更新:
在最新的PyDev版本中,可以右键单击堆栈中的某个帧,然后选择PyDev>;调试控制台,以便在调试会话期间使交互控制台具有与上下文关联的更多函数。
不幸的是,实际的交互控制台(这将是使用代码的首选方式(包括代码完成等--http://pydev.org/manual_adv_interactive_console.html))现在与调试会话没有连接(这是计划的,但仍然没有实现)。
不过,有了“更简单”的控制台,您仍然可以交互地检查和播放断点作用域中可用的变量:http://pydev.org/manual_adv_debug_console.html(这与pdb相同——只需要在断点命中后在可用的控制台中键入代码)。
干杯
法比奥
相关问题 更多 >
编程相关推荐