Very often I need to create dicts that differ one from another by an item or two. Here is what I usually do:
setup1 = {\'param1\': val1, \'param
setup2 = dict((k, {'param1': val10, 'param2': val20}.get(k, v)) for k, v in setup1.iteritems())
This only works if all keys of the update dictionary are already contained in setup1.
setup1
If all your keys are strings, you can also do
setup2 = dict(setup1, param1=val10, param2=val20)