2010-07-07 228 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解釋器來獲取值