Robert Dailey <rcdai...@gmail.com> writes: > Suppose I have 2 functions like so: > > def Function2( **extra ): > # do stuff > > def Function1( **extra ): > Function2( extra )
(Style note: The Python style guide, PEP 8, would have the above code written as:: def function2(**extra): # do stuff def function1(**extra): function2(extra) See <URL:http://www.python.org/dev/peps/pep-0008> for a sensible style guide for Python code.) > As you can see, I would like to forward the additional keyword > arguments in variable 'extra' to Function2 from Function1. How can I > do this? I'm using Python 3.0.1 The syntax for “collect remaining positional arguments into a sequence” in a function definition versus “unpack the values from this sequence into positional arguments” in a function call are intentionally similar:: def bar(spam, eggs, beans): pass def foo(*args): bar(*args) Likewise for the syntax for “collect remaining keyword arguments into a mapping” in a function definition versus “unpack the items from this mapping into keyword arguments” in a function call:: def function2(spam, eggs, beans): pass def function1(**kwargs): function2(**kwargs) For more detail, see the language reference section explaining calls <URL:http://docs.python.org/reference/expressions.html#calls>. -- \ “A society that will trade a little liberty for a little order | `\ will lose both, and deserve neither.” —Thomas Jefferson, in a | _o__) letter to Madison | Ben Finney -- http://mail.python.org/mailman/listinfo/python-list