如何引用一个不以pythonic方式执行任何操作的函数?如何创建不执行任何操作的函数引用
双向的,我能想到的是:
def nope():
pass
fun1 = nope
fun2 = lambda: None
有没有更好的办法?
如何引用一个不以pythonic方式执行任何操作的函数?如何创建不执行任何操作的函数引用
双向的,我能想到的是:
def nope():
pass
fun1 = nope
fun2 = lambda: None
有没有更好的办法?
我将输出的情况下,一个信息消息中的被调用的函数:
fun2 = lambda:"Not yet implemented"
如果它被称为消息将被输出时,如果没有则只是一个参考:
In [73]: fun2
Out[73]: <function __main__.<lambda>>
In [74]: fun2()
Out[74]: 'Not yet implemented'
谢谢你的回答。这实际上是一个非常好的主意。我没有在我的问题中提供很多信息。但在我的情况下,我有一个事件链有时得到处理,但并不总是。为了打破这个链条,我做了一个删除以下被调用的函数。这当然也可以通过“如果乐趣不是无:fun()”来处理。但是我又有这种感觉会让事情变得更加复杂。 –
@magu_,啊好吧,所以你会希望稍后使用该值来测试,有点像一个标记值? –
种类。在正常情况下,总有一些东西需要调用。在“特殊”情况下,如初始化或加载新数据。回调应该被禁用。 –
你不能变得更好。在最大你可以在同一条线上。
def nope(): pass
应该是nope()我认为 –
都可以,从更好地理解第一个看起来更清晰,第二个更短 –
@RNar。不,我想引用不执行它的功能(在那个时刻)。有点像函数指针。 –