Hi all,

I have a list of items that has contiguous repetitions of values, but the number and location of the repetitions is not important, so I just need to strip them out. For example, if my original list is [0,0,1,1,1,2,2,3,3,3,2,2,2,4,4,4,5], I want to end up with [0,1,2,3,2,4,5].

Here is the way I'm doing this now:

def straightforward_collapse(myList):
    collapsed = [myList[0]]
    for n in myList[1:]:
        if n != collapsed[-1]:
            collapsed.append(n)

    return collapsed

Is there an elegant way to do this, or should I just stick with the code above?

Thanks,
Alan McIntyre
http://www.esrgtech.com
--
http://mail.python.org/mailman/listinfo/python-list

Reply via email to