def foo(a, b, **kwds): print a, b for key, value in kwds.iteritems(): print key, '-->', value foo(1, 2, pippo=3, pluto=4) foo(pippo=3, a=1, b=2, pluto=4) d = {'pippo': 3, 'a': 1} foo(pluto=4, b=2, **d)