xoa.misc.dict_merge
- xoa.misc.dict_merge(*dd, mergesubdicts=True, mergelists=False, mergetuples=False, uniquify=False, skipnones=True, overwriteempty=False, cls=None, **kwargs)[source]
Merge dictionaries
First dictionaries have priority over next
- Parameters:
dd – Argument are interpreted as dictionary to merge. Those who are not dictionaries are skipped.
mergesubdicts (optional) – Also merge dictionary items (like in a tree).
mergetuples (optional) – Also merge tuple items.
mergelists (optional) – Also merge list items.
uniquify (optional) – Uniquify lists and tuples.
skipnones (optional) – Skip Nones.
overwriteempty (optional) – Overwrite value that does are not True when converted to bool.
cls (optional) – Class to use. Default to the first class found in arguments that is not a
dict
, else defaults todict
.
Example
In [1]: d1 = dict(a=3, b=5, e=[1, 2]) In [2]: d2 = dict(a=5, c=7, e=[3, 4]) In [3]: print(dict_merge(d1, d2, mergelists=True)) {'a': 3, 'b': 5, 'e': [1, 2, 3, 4], 'c': 7}