我正在尝试为字典中的键构建完整路径。
构建字典时,键都是唯一的,但值不是唯一的。
mydict = {'12345': '11', '45678': '11', '11': '2', '2': '6', '6': '6', ' 789': '2'}
我想做的是获取每个键的完整路径,直到键==值,其中输出将是一个如下所示的文件:
12345, 11, 2, 6
45678, 11, 2, 6
11, 2, 6
2, 6
6
789, 2, 6
我可以搜索字典一次以获得第一个值,但我不知道如何使用该值作为下一个键搜索并保持所有关联正确。字典只是整数,键按数字顺序排列。
最佳答案
这应该可以做到:
In [53]: mydict = {'12345': '11', '45678': '11', '11': '2', '2': '6', '6': '6', '789': '2'}
In [54]: answer = []
In [55]: for key in mydict:
....: path = [key]
....: while mydict[key] != key:
....: key = mydict[key]
....: path.append(key)
....: answer.append(path)
....:
In [56]: answer
Out[56]:
[['11', '2', '6'],
['789', '2', '6'],
['45678', '11', '2', '6'],
['2', '6'],
['6'],
['12345', '11', '2', '6']]
关于python - 搜索字典以获取每个键的完整路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15083918/