Source code for calcpy._collect

"""Collections."""

from math import inf


[docs] def convert_nested_dict_to_nested_list(data, /, maxdepth=inf): """Convert a nested dictionary to a nested list. Parameters: data (dict): Nested dictionary to convert. maxdepth (int): Maximum depth to convert to a nested list. Returns: list: A nested list representation of the nested dictionary. Example: >>> data = {"A": {"B": 1, "C": 2}, "D": {"E": 3, "F": 4}} >>> convert_nested_dict_to_nested_list(data) [['A', 'B', 1], ['A', 'C', 2], ['D', 'E', 3], ['D', 'F', 4]] """ if maxdepth == 0: return [[data]] results = [] for k in data: v = data[k] if isinstance(v, dict): lst = convert_nested_dict_to_nested_list(v, maxdepth-1) for e in lst: results.append([k] + e) else: results.append([k, v]) return results