dotfiles/snippets/python/flatten.py

10 lines
318 B
Python
Raw Normal View History

2020-04-06 19:49:59 +02:00
def flatten(d: dict, leaf_type=str):
out = {}
for key, value in d.items():
if isinstance(value, leaf_type):
out[key] = value
elif isinstance(value, dict):
out = {**out, **flatten(value)}
else:
raise ValueError("Unexpected value type: {type(value)}")