I have this data:
self.data = [(1, 1, 5.0), (1, 2, 3.0), (1, 3, 4.0), (2, 1, 4.0), (2, 2, 2.0)] >
self.data = [(1, 1, 5.0), (1, 2, 3.0), (1, 3, 4.0), (2, 1, 4.0), (2, 2, 2.0)]
itertools.groupby collects together contiguous items with the same key. If you want all items with the same key, you have to sort self.data first.
self.data
for mid, group in itertools.groupby( sorted(self.data,key=operator.itemgetter(1)), key=operator.itemgetter(1)):