Spaces:
Sleeping
Sleeping
File size: 471 Bytes
99ba41d |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
def flatten(d, parent_key="", sep="."):
"""
Convert nested dicts into MongoDB dot-notation dict.
Arrays/lists are kept as-is (not broken into dotted paths).
"""
items = []
for k, v in d.items():
new_key = f"{parent_key}{sep}{k}" if parent_key else k
if isinstance(v, dict) and v is not None:
items.extend(flatten(v, new_key, sep=sep).items())
else:
items.append((new_key, v))
return dict(items)
|