考虑:
blank_fn = lambda *args, **kwargs: None
def callback(x, y, z=''):
print x, y, z
def perform_task(callback=blank_fn):
print 'doing stuff'
callback('x', 'y', z='z' )
这样做的动机是我不必输入逻辑来检查是否已分配回调,因为它默认为blank_fn,它什么都不做。
这行得通,但是有什么理由我不应该这样做吗?它是pythonic吗?有更好的方法吗?是否有内置的:
lambda *args, **kwargs: None