有时我想将回调函数作为参数传递给 my_function 。但是,我希望默认行为只是什么都不做。
我发现自己想编写以下无效代码行:
def my_function(args, callback_function=pass):
# do something
callback_function()
这不起作用,所以我想出的最好的有效解决方案是:
def do_nothing():
pass
def my_function(args, callback_function=do_nothing):
# do something
callback_function()
有没有更干净的方法来做到这一点,更像上面的第一个例子?
调用“无”应该可以满足您的要求。 'pass' 是一个关键字,不能像这样调用。 None 是默认值,可以使用 lambda 来应用。
def my_function(args, callback_function=lambda: None):
# do something
callback_function()