Gök*_*ver 7 python eclipse pydev
我尝试了Eclipse + PyDev对我的一些工作.(Eclipse v3.5.0 + PyDev v1.5.6)我找不到将所有变量暴露给PyDev控制台的方法(通过PyDev控制台 - >控制台用于当前活动编辑器选项)我使用简单的代码来描述问题.当我一步一步地浏览代码时,我无法从控制台访问我的"x"变量.它在Variables选项卡上查看,但这不是我想要的.
任何帮助都很感激.
有关更好的说明,请参阅我
alt text http://img541.imageshack.us/img541/4514/eclipsedebug.png
编辑:
假设添加一个简单的函数,如:
def myfunc(x):
return x**x
Run Code Online (Sandbox Code Playgroud)
当我使用代码中添加的函数进行调试时,我可以轻松地从控制台访问myfunc.(输入myfunc,它将在此自动执行后可用:
>>> from part2.test import myfunc
>>> myfunc
Run Code Online (Sandbox Code Playgroud)
然后,当我执行myfunc(5)时,它就像在Python解释器中一样.以类似的方式访问变量以调试我的代码是非常有用的.我有大数组,我在调试过程中进行各种测试和操作.比如:获取我的x并执行x.sum(),稍后执行x [:: 10],或者使用其他数组进行转置操作,观察结果,实验等...
希望有更好的解决方案.
更新:
在最新的PyDev版本中,可以右键单击堆栈中的框架并选择PyDev>调试控制台,以使交互式控制台在调试会话期间具有与上下文关联的更多功能.
不幸的是,实际的交互式控制台,这将是使用代码(使用代码完成等 - http://pydev.org/manual_adv_interactive_console.html)的首选方式,目前没有与调试会话的连接(这是计划但仍未实施).
尽管如此,通过"更简单"的控制台,您仍然可以交互式地检查和使用断点范围内可用的变量:http://pydev.org/manual_adv_debug_console.html(与您的相同) pdb - 只需在遇到断点后在可用控制台中键入代码即可.
干杯,
法比奥
对于这种探索性调试,我喜欢使用 pdb,即包含电池的调试器。我还没有在 PyDev 中使用过它,所以我不知道它们是如何组合在一起的。我的猜测是它会做你期望的事情。其用法示例:
import pdb
def myfunc(x):
pdb.set_trace()
return x**x
Run Code Online (Sandbox Code Playgroud)
这将在执行 return 语句之前中断,并且它允许您使用完整的 Pythonic 语句来弄清楚发生了什么。我将它用作交互式打印语句:设置我想要深入的位置,检查值并计算结果,然后逐步观察它的发生。也许这是一种懒惰的调试方式,但有时您需要更多信息才能做出不那么懒惰的决定:-)
我通常参考的页面位于Python Conquers The Universe,其中还链接了一些其他信息源。
归档时间: |
|
查看次数: |
11788 次 |
最近记录: |