2010-10-22 81 views
1

我寫了gtk代碼。我經常有短回調,不需要關閉,因爲他們通過了他們需要的所有參數。例如,我在創建的時候有這樣的一個循環的一些gtk.TreeViewColumnspython style:內聯函數,不需要內聯?

def widthChanged(MAINCOL, SPEC, SUBCOL, expandable): 
    if expandable: return 
    w = MAINCOL.get_width() 
    SUBCOL.set_fixed_width(w) 

cl.connect("notify::width", widthChanged, pnlcl, expand) 

這可能是低效的,因爲在環(側問題的每一次迭代所創建的功能:它實際上是,或者是優化?)。但是,我覺得如果我將所有這些單線移動到頂層,代碼會更混亂。有什麼意見?

+0

如果不能展開,cl.connect(「notify :: width」,lambda maincol,spec,subcol,expandable:subcol.set_fixed_width(maincol.get_width())如果不能展開,那麼無法使用pnlcl,expand )...不知道這個或多或少是可讀的,但至少它少了一個。 – AKX 2010-10-22 19:06:08

+0

是的,但是我的觀點表明:它比具有頂級功能的效率低。也可能比這個版本的可讀性差,所以這兩種方式都更糟糕= P – Claudiu 2010-10-22 20:14:26

回答

4

去任何風格最具可讀性。除非您的代碼分析工具告訴您該區域是熱點,否則不要擔心速度。