[英]How to recurse a list of dictionaries into a hierarchical structure using Python?
這是我的數據結構的一小部分摘錄:
[
{
"name": "manager_a", # doesn't manage any other managers
"manager": "manager_b",
},
{
"name": "manager_b",
"manager": "manager_c",
},
{
"name": "manager_c" # doesn't have a manager
},
{
"name": "manager_d", # doesn't manage any other managers
"manager": "manager_c"
},
...
]
我想要的結果是顯示經理之間的層次結構。 可能是這樣的,但我對如何構建層次結構的其他想法持開放態度:
[
{
"name": "manager_c", # doesn't have a manager
"reports": [
{
"name": "manager_b",
"reports": [
"manager_a" # doesn't manage any other managers
]
},
"manager_d" # doesn't manage any other managers
]
}
]
沒有循環關系,但管理器層次結構可以有幾層深。
我嘗試了各種方法,但我真的很難理解遞歸。
在最基本的層面上,您可能正在尋找一種稱為QuickUnion的數據結構,其中每個“id”是您的 label“a”、“b”、“c”等,並且每個人都連接到零或更多人。 結果是一棵很像您所設想的分層樹。 如果您還不知道它是什么,請嘗試一下。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.