Enable Javascript in your browser and then refresh this page, for a much enhanced experience.
First solution in Uncategorized category for The Flat Dictionary by Testimony
def flatten(dictionary: dict[str, str | dict]) -> dict[str, str]:
def recurse(d, prefix=""):
items = {}
if not d:
items[prefix.rstrip("/")] = ""
else:
for k, v in d.items():
new_key = f"{prefix}{k}" if prefix == "" else f"{prefix}/{k}"
if isinstance(v, dict):
if v:
items.update(recurse(v, new_key))
else:
items[new_key] = ""
else:
items[new_key] = v
return items
return recurse(dictionary)
Nov. 7, 2025
Comments: