In python is it possible to compare all objects in the following structure
I have a dictionary of lists and each list has objects in it e.g.
[
[object1,object2,object3],
[object4,object5,object6],
[object7,object8,object9],
]
I want to compare all objects by a attribute in each list to each other and identify what objects are not in each list.
Based on the feedback please see an example below
from collections import defaultdict
from pprint import pprint
class mytest:
def __init__(self, no, description):
self.no = no
self.description = description
data = []
x = mytest(1,'test1')
x2 = mytest(2,'test1')
x3 = mytest(1,'test2')
x4 = mytest(2,'test2')
x5 = mytest(3,'test2')
x6 = mytest(1,'test3')
x7 = mytest(2,'test3')
x8 = mytest(4,'test3')
data.append(x)
data.append(x2)
data.append(x3)
data.append(x4)
data.append(x5)
data.append(x6)
data.append(x7)
data.append(x8)
groups = defaultdict(list)
for obj in data:
groups[obj.description].append(obj)
new_list = groups.values()
#i want to find out what items are not in each list
for list in new_list:
pprint(list)
#example x8 = mytest(4,'test3') is only in one of the list so is missing from list 1 and 2
hopefully this helps