def flatten()

in aai/converter.py [0:0]


def flatten(d, sep="_"):
    obj = {}

    def recurse(t, parent_key=""):

        if "Tags" in parent_key:
            if isinstance(t, list):
                for i in t:
                    if isinstance(i, dict):
                        obj["tag:{}".format(i["Key"])] = i["Value"]
        else:
            if isinstance(t, list):
                for i in range(len(t)):
                    recurse(t[i], parent_key + sep + str(i) if parent_key else str(i))
            elif isinstance(t, dict):
                for k, v in t.items():
                    recurse(v, parent_key + sep + k if parent_key else k)
            else:
                obj[parent_key] = t

    recurse(d)

    return obj