2010-07-07 90 views
21

我调试Python代码,当我试图表明一个字符串变量的内容,其显示截断...变量观众截断字符串值

如何可以显示一个变量调试的全部内容Eclipse上的PyDev的Python代码?

+0

不幸的是,因为这是一个Python明确的答案---如果你想查看字符串的某个部分总是可以使用some_string [x:y]从第x个元素选择到第y个元素,以在调试环境的表达式选项卡中查看该元素。 – AER 2014-02-10 03:26:37

回答

42

如果右键单击“变量”视图或“表达式”视图中的详细信息窗格,则会出现Max Length...菜单选项。您可以在那里输入一个数字来配置字符串输出的截断。请记住,所计算出的长度包括在开始类型标识符,所以实际上str: 12345为10个字符,而不是5.

似乎有1000个字符的硬性限制,进入0即使当,其中所述场的描述的权利要求意思是“无限”,所以不管你输入什么,你永远不会看到超过1000个字符。我不知道这是不是一个已知的问题,我没有看过它。对于比这更长的字符串或其他变量,我通常使用标准库中的logging模块并将字符串发送到日志文件或stderr。

+2

我需要超过1000个字符才能查看,因为我想查看XML Web响应。关于在调试自己的代码时使用日志是一种很好的方式,但在我的情况下,我正在调试三十方库以查看发生了什么,并使用日志记录令人讨厌。 – FerranB 2010-07-08 22:59:22

+13

注意:“详细信息窗格”是显示字符串的空白处。也许最明显的... – Ixx 2012-07-05 13:35:19

+1

它实际上是1024个字符 – 2012-11-28 22:05:58

1

由于这是Google的热门话题,我应该补充一点,如果在调试模式下右键单击变量窗格并选择“复制变量”,Eclipse将截断的字符串值(以及所有其他变量)被添加全部到系统剪贴板。

然后你可以将其粘贴到文本编辑器来提取目标值

+4

至少对于Ubuntu上的Eclipse 4.2.1来说,这似乎不是真的。当我右键单击和“复制变量”,我仍然在我的剪贴板上得到截断的输出。 – Christian 2012-10-23 18:42:01

+0

这对我很有用(Windows 7上的Luna/4.4.1)。请注意,它将变量类型和名称与值一起复制。 – sleske 2015-10-07 10:08:54

4

找到的办法解决!

在断点处开始的PyDev调试控制台enter image description here enter image description here

,然后用Python解释器来获取值