2013-05-17 56 views
2

當我新建某個實例時,它的__ init __會執行,例如,Eclipse調試上的變量查看器會自動評估Python屬性

self._regex = value 
self._regex_dict = {} 

在Eclipse/PyDev調試的變量查看,self._regex_dict不等於空,但有一個條目來代替。

似乎變量視圖自動生成self.regex和可惜的是,下面的方法定義,將輸出一個進入self._regex_dict

@property 
def regex(self): 
    ... 
    self._regex_dict[language_code] = compiled_regex 
    return self._regex_dict[language_code] 

是否有任何配置,防止的Eclipse/PyDev調試的這種自動生成行爲變量視圖?

P.S.如果我關閉Eclipse/PyDev調試器的變量視圖,則不會發生此問題。但我調試

感謝的時候,確實需要它

回答

0

那麼,當調試器遇到斷點,你有變量視圖中可以看到,它會在上下文和所有的對象做一個目錄()每個值都會執行str()來顯示它們。

由於你有一個屬性(正則表達式),它將添加一個條目到你的字典'幕後'訪問時,因爲變量視圖肯定會嘗試向你顯示這個值,我不知道你有一個除了改變你的程序或改變調試器本身(它會得到pydevd_vars.frameVarsToXML的變量)。