file = [('parent1', ['child1', 'child2', 'child3']),
('parent2', ['child4', 'child5', 'child6']
), ('child1', ['child7', 'child8']), (
'child5', ['child10', 'child33'])]
json_dict = {}
flat_dict = {}
for parent, children in file:
if parent in flat_dict:
value = flat_dict[parent]
else:
value = {}
flat_dict[parent] = json_dict[parent] = value
for child in children:
flat_dict[child] = value[child] = {}
print(json_dict)
ZmlsZSA9IFsoJ3BhcmVudDEnLCBbJ2NoaWxkMScsICdjaGlsZDInLCAnY2hpbGQzJ10pLAooJ3BhcmVudDInLCBbJ2NoaWxkNCcsICdjaGlsZDUnLCAnY2hpbGQ2J10KKSwgKCdjaGlsZDEnLCBbJ2NoaWxkNycsICdjaGlsZDgnXSksICgKJ2NoaWxkNScsIFsnY2hpbGQxMCcsICdjaGlsZDMzJ10pXQoKanNvbl9kaWN0ID0ge30KZmxhdF9kaWN0ID0ge30KCmZvciBwYXJlbnQsIGNoaWxkcmVuIGluIGZpbGU6CiAgICBpZiBwYXJlbnQgaW4gZmxhdF9kaWN0OgogICAgICAgIHZhbHVlID0gZmxhdF9kaWN0W3BhcmVudF0KICAgIGVsc2U6CiAgICAgICAgdmFsdWUgPSB7fQogICAgICAgIGZsYXRfZGljdFtwYXJlbnRdID0ganNvbl9kaWN0W3BhcmVudF0gPSB2YWx1ZQogICAgZm9yIGNoaWxkIGluIGNoaWxkcmVuOgogICAgICAgIGZsYXRfZGljdFtjaGlsZF0gPSB2YWx1ZVtjaGlsZF0gPSB7fQoKcHJpbnQoanNvbl9kaWN0KQ==
{'parent1': {'child1': {'child7': {}, 'child8': {}}, 'child2': {}, 'child3': {}}, 'parent2': {'child4': {}, 'child5': {'child10': {}, 'child33': {}}, 'child6': {}}}