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 dictionary.
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}