> Here's an ugly way I wouldn't recommended (using itertools groupby): > > py> from itertools import groupby > py> alist = [0xF0, 1, 2, 3, 0xF0, 4, 5, 6, > ... 0xF1, 7, 8, 0xF2, 9, 10, 11, 12, 13, > ... 0xF0, 14, 0xF1, 15] > py> def doit(alist): > ... i = (list(g) for k,g in groupby(alist, lambda x: 0xf0&x)) > ... return [k for k in [j + i.next() for j in i] if len(k)>1] > ... > py> doit(alist) > > [[240, 1, 2, 3], > [240, 4, 5, 6], > [241, 7, 8], > [242, 9, 10, 11, 12, 13], > [240, 14], > [241, 15]] > > James
Wow that is ugly. I think I like the simpler way better. Thanks -- http://mail.python.org/mailman/listinfo/python-list