class Foo(object):

    def __init__(self, **inputs):
        inputs['a'] = inputs.get('a', 1)
inputs['b'] = inputs.get('b', 2)
self.bar(**inputs)

def bar(self, *args, **kwargs):
    print('bar got: %s' % kwargs)
Foo()
Foo(a=3, b=4)
Pack function arguments into a dictionary - opposite to **kwargs