我在 Python 3 中创建树层次结构时遇到问题。我希望能够在不使用类的情况下做到这一点。
我需要开始的数据没有顺序和格式['ID','Parent']:
data=[['E1', 'C1'],['C1', 'P1'],['P1', 'R1'],['E2', 'C2'],['C2', 'P2'],['P2', 'R1'],['C3', 'P2'],['E3', 'C4'],['C4', 'P3'],
['P3', 'R2'],['C5', 'P3'],['E4', 'C6'],['C6', 'P4'], ['P4', 'R2'],['E5', 'C7'],['C7', 'P5'],['P5', 'R3'],['E6', 'C9'],['C9', 'P6'],['P6', 'R3'],
['C8', 'P6'],['E7', 'C10'],['C10', 'P7'],['P7', 'R4'],['C11', 'P7'],['E8', 'C12'],['C12', 'P8'],['P8', 'R4']]
Run Code Online (Sandbox Code Playgroud)
我想在不使用类的情况下创建 (Tree) 字典变量,最终得到如下结果:
Tree={'R1':{'P1':{},'P2':{}},'R2':{}} etc
Run Code Online (Sandbox Code Playgroud)
或者
Tree={'R1':[{'P1':[],'P2':[]}],'R2':[]} etc
Run Code Online (Sandbox Code Playgroud)
显然 R1 和 R2 有更多的孩子,但也许这就是树结构的样子?