python:我需要将字典中类似的项分组到一个列表中

python:我需要将字典中类似的项分组到一个列表中,python,list,dictionary,group-by,split,Python,List,Dictionary,Group By,Split,我有以下python字典 {731819: [ {'lprods': ['5261', '5247', '5246'],'rprods':['123','456'],'cond':'a1'}, {'lprods': ['5261', '5547', '5246'],'rprods':['1223','496'],'cond':'a1'}, {'lprods': ['526', '557', '5246'],'rprods':['223','496'],'cond':'f1'}, {'lprods

我有以下python字典

{731819:
[
{'lprods': ['5261', '5247', '5246'],'rprods':['123','456'],'cond':'a1'},
{'lprods': ['5261', '5547', '5246'],'rprods':['1223','496'],'cond':'a1'},
{'lprods': ['526', '557', '5246'],'rprods':['223','496'],'cond':'f1'},
{'lprods': ['61', '47', '246'],'rprods':['23','96'],'cond':'a0'}
]
}
我需要得到基于“cond”的输出。 具有相同“条件”的项目应在列表中分组在一起。 输出应为:

a1=[
[['5261', '5247', '5246'],['123','456']],
[['5261', '5547', '5246'],['1223','496']]
]
f1=[['526', '557', '5246'],['223','496']]
a0=[['61', '47', '246'],['23','96']]
数组的内容是lprod和rprod


事实上,具有相同条件的项目应该在单个列表中。

因此,您可以使用dict:

result = {}
for e in d[731819]:
    result.setdefault(e['cond'], []).extend([e['lprods'],e['rprods'] ])
结果

result
输出:

{'a1': [['5261', '5247', '5246'],
  ['123', '456'],
  ['5261', '5547', '5246'],
  ['1223', '496']],
 'f1': [['526', '557', '5246'], ['223', '496']],
 'a0': [['61', '47', '246'], ['23', '96']]}

你的答案现在比我的旧答案要好:-)+1@SoniaThomas如果这解决了您的问题,您可以接受答案,谢谢