recursive_merge_dicts#
- gammapy.utils.scripts.recursive_merge_dicts(a, b)[source]#
Recursively merge two dictionaries.
Entries in b override entries in a. The built-in update function cannot be used for hierarchical dicts, see: http://stackoverflow.com/questions/3232943/update-value-of-a-nested-dictionary-of-varying-depth/3233356#3233356
- Parameters
- adict
dictionary to be merged
- bdict
dictionary to be merged
- Returns
- cdict
merged dict
Examples
>>> from gammapy.utils.scripts import recursive_merge_dicts >>> a = dict(a=42, b=dict(c=43, e=44)) >>> b = dict(d=99, b=dict(c=50, g=98)) >>> c = recursive_merge_dicts(a, b) >>> print(c) {'a': 42, 'b': {'c': 50, 'e': 44, 'g': 98}, 'd': 99}