尝试通过基于键的分组来构建层次结构列表 - parent 和 account_name
lst = [
{
"parent": "abc",
"account_name": "abc1",
"account_number": "119445",
},
{
"parent": "abc",
"account_name": "abc2",
"account_number": "119446",
},
{
"parent": "abc",
"account_name": "abc2",
"account_number": "119447",
}
]
所需的 O/P
{
'abc': [
{
'abc1': ['119445'],
'abc2': ['119446', '119447']
}
]
}
尝试过setdefault,但没有得到我想要的输出。
parent = {}
account_name = {}
account_number = {}
for i in lst:
j = i['account_number']
account_name.setdefault(i['account_name'], []).append(j)
parent.setdefault(i['parent'],[]).append(account_name)
print(parent)
{
'abc': [
{
'abc1': ['119445'],
'abc2': ['119446', '119447']
},
{
'abc1': ['119445'],
'abc2': ['119446', '119447']
},
{
'abc1': ['119445'],
'abc2': ['119446', '119447']
}
]
}