считают:лямбда * Args, ** kwargs: Нет
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 который просто ничего не делает.
Это работает, но есть ли причина, по которой я не должен этого делать? Это пифонический? Есть ли лучший способ сделать это? Есть встроенный для:
lambda *args, **kwargs: None
Использование 'lambda' для определения именованной функции не является Pythonic, no. Используйте 'def'. – geoffspear