Example of having default values and overriding them with kwargs From http://stackoverflow.com/questions/1098549/proper-way-to-use-kwargs-in-python
def testFunc( **kwargs ):
options = { 'option1' : 'default_value1',
'option2' : 'default_value2',
'option3' : 'default_value3', }
options.update(kwargs)
print options
testFunc( option1='new_value1', option3='new_value3' )
# {'option2': 'default_value2', 'option3': 'new_value3', 'option1': 'new_value1'}
testFunc( option2='new_value2' )
# {'option1': 'default_value1', 'option3': 'default_value3', 'option2': 'new_value2'}