From 64040725591a421e50065eb88db10e628daeb000 Mon Sep 17 00:00:00 2001 From: bretello Date: Mon, 6 Apr 2020 19:49:59 +0200 Subject: [PATCH] snippets: first commit --- snippets/python/flatten.py | 9 +++++++++ 1 file changed, 9 insertions(+) create mode 100644 snippets/python/flatten.py diff --git a/snippets/python/flatten.py b/snippets/python/flatten.py new file mode 100644 index 0000000..1dc6edb --- /dev/null +++ b/snippets/python/flatten.py @@ -0,0 +1,9 @@ +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)}")