def negate_all(f):
 return (lambda *args, **kwargs: [(- y) for y in f(*args, **kwargs)])

def negate_all ( f ) : return ( lambda * args , ** kwargs : [ ( - y ) for y in f ( * args , ** kwargs ) ] )
the same when f returns a list of numbers .