[Solved] How to split a python dictionary for its values on matching a key
from itertools import product my_dict = {‘a’:1, ‘chk’:{‘b’:2, ‘c’:3}, ‘e’:{‘chk’:{‘f’:5, ‘g’:6}} } def process(d): to_product = [] # [[(‘a’, 1)], [(‘b’, 2), (‘c’, 3)], …] for k, v in d.items(): if k == ‘chk’: to_product.append([(k2, v2) for d2 in process(v) for k2, v2 in d2.items()]) elif isinstance(v, dict): to_product.append([(k, d2) for d2 in process(v)]) else: … Read more