2015-10-05 87 views
1

如何引用一個不以pythonic方式執行任何操作的函數?如何創建不執行任何操作的函數引用

雙向的,我能想到的是:

def nope(): 
    pass 

fun1 = nope 
fun2 = lambda: None 

有沒有更好的辦法?

+0

應該是nope()我認爲 –

+0

都可以,從更好地理解第一個看起來更清晰,第二個更短 –

+0

@RNar。不,我想引用不執行它的功能(在那個時刻)。有點像函數指針。 –

回答

1

我將輸出的情況下,一個信息消息中的被調用的函數:

fun2 = lambda:"Not yet implemented" 

如果它被稱爲消息將被輸出時,如果沒有則只是一個參考:

In [73]: fun2 
Out[73]: <function __main__.<lambda>> 

In [74]: fun2() 
Out[74]: 'Not yet implemented' 
+0

謝謝你的回答。這實際上是一個非常好的主意。我沒有在我的問題中提供很多信息。但在我的情況下,我有一個事件鏈有時得到處理,但並不總是。爲了打破這個鏈條,我做了一個刪除以下被調用的函數。這當然也可以通過「如果樂趣不是無:fun()」來處理。但是我又有這種感覺會讓事情變得更加複雜。 –

+0

@magu_,啊好吧,所以你會希望稍後使用該值來測試,有點像一個標記值? –

+0

種類。在正常情況下,總有一些東西需要調用。在「特殊」情況下,如初始化或加載新數據。回調應該被禁用。 –

0

你不能變得更好。在最大你可以在同一條線上。

def nope(): pass 
相關問題