Thank you to all who help here.
I have a list of lists. Those lists contain dictionaries like so:
combined lists = [
[
{'COMPANY': 'company1', 'NUMBER': '111', 'SHIPMENTS': ['1', '2', '3', '4']},
{'COMPANY': 'company2', 'NUMBER': '222', 'SHIPMENTS': ['1']},
{'COMPANY': 'company3', 'NUMBER': '333', 'SHIPMENTS': ['1', '4']},
{'COMPANY': 'company4', 'NUMBER': '444', 'SHIPMENTS': ['2', '5']},
{'COMPANY': 'company5', 'NUMBER': '555', 'SHIPMENTS': ['1', '3', '5', '9']}
],
[
{'COMPANY': 'company1', 'NUMBER': '111', 'SHIPMENTS': ['5', '6', '7', '8']},
{'COMPANY': 'company3', 'NUMBER': '333', 'SHIPMENTS': ['3', '5']},
{'COMPANY': 'company5', 'NUMBER': '555', 'SHIPMENTS': ['3', '5', '7']},
{'COMPANY': 'company7', 'NUMBER': '777', 'SHIPMENTS': ['2', '4']},
{'COMPANY': 'company9', 'NUMBER': '999', 'SHIPMENTS': ['1', '2', '5', '6', '7']}
],
]
I to combine these lists based on the COMPANY
and SHIPMENTS
, and I'd like to not have duplicate SHIPMENTS
values. The NUMBER
key/value is irrelevant.
Final output would ideally be a list of dictionaries that looks something like this, where the shipments are all combined for the company:
final_list = [
{'COMPANY': 'company1', 'SHIPMENTS': ['1', '2', '3', '4', '5', '6', '7', '8']},
{'COMPANY': 'company2', 'SHIPMENTS': ['1']},
{'COMPANY': 'company3', 'SHIPMENTS': ['1', '4', '3', '5']},
{'COMPANY': 'company4', 'SHIPMENTS': ['2', '5']},
{'COMPANY': 'company5', 'SHIPMENTS': ['1', '3', '5', '7', '9']},
{'COMPANY': 'company7', 'SHIPMENTS': ['2', '4']},
{'COMPANY': 'company9', 'SHIPMENTS': ['1', '2', '5', '6', '7']}
]
I know I haven't offered anything I've tried, but mainly looking for how to approach getting to the final output. I'm using python3.6 if that matters