相关疑难解决方法(0)

在不使用类/对象的情况下递归创建树层次结构

我在 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 有更多的孩子,但也许这就是树结构的样子?

python tree recursion hierarchy python-3.x

2
推荐指数
1
解决办法
958
查看次数

标签 统计

hierarchy ×1

python ×1

python-3.x ×1

recursion ×1

tree ×1