我有一个文本文件,其中包含由空格分隔的树状数据,结构如下:'分支数''节点名称'...... 0(0 表示没有进一步的分支)例如:
1 A 3 B 2 C 0
D 0
E 1 F 0
G 2 H 0
I 0
相应的字典“树”应该是这样的:
tree = {'A': {'B': {'C': {},
'D': {}},
'E': {'F': {}},
'G': {'H': {},
'I': {}}}}
我认为递归方式是正确的方法,但我无法使其工作。到目前为止,我有以下功能:
def constructNodes(branch):
global nodes_temp
if not branch:
branch = deque(file.readline().strip().split())
node1 = branch.popleft()
nodes_temp.add(node1)
nbBranches = int(branch.popleft())
for i in xrange(nbBranches):
constructNodes(branch)
return nodes_temp
在此先感谢您的帮助。