I have a dict inside a list that is currently like this:
[ {'name': 'Joe',
'score': 98,
'subject': 'Math'},
{'name': 'Bob',
'score': 90,
'subject': 'Math'},
{'name': 'Bill',
'score': 88,
'subject': 'English'},
{'name': 'Jane',
'score': 95,
'subject': 'English'}]
I would like to regroup or reorganize it as follows:
[ {'subject': 'Math',
'Results': [{'name': 'Joe','score':98}, {'name':'Bob', 'score':90}]},
{'subject': 'English',
'Results': [{'name': 'Jane','score':95}, {'name':'Bill', 'score':88}]}
]
I tried using itertools.groupby
and dict.setdefault()
as suggested here, but cannot quite get what I want. How can I do this?