human
I wrote the below code

    if (not isinstance(layers, list)):
        layers = [layers]
    def _check_args_exist(l):
        args = inspect.getargspec(l).args
        for (k, v) in six.iteritems(kwargs):
            assert (k in args), 'No    argument    {}    in    {}'.format(k, l.__name__)
    for l in layers:
        assert hasattr(l, 'symbolic_function'), '{}    is    not    a    registered    layer'.format(l.__name__)
        _check_args_exist(l.symbolic_function)
    new_scope = copy.copy(get_arg_scope())
    for l in layers:
        new_scope[l.__name__].update(kwargs)
    _ArgScopeStack.append(new_scope)
    (yield)
    del _ArgScopeStack[(-1)]

What's a good function header?

Here's a good function header?
assistant
#Here's a good function header.

@contextmanager
def argscope(layers, **kwargs):