John Salerno <[EMAIL PROTECTED]> wrote: >If I want to create a list of the form [100, 99, 99, 98, 98, 97, 97...] >(where each item is repeated twice after the first one), how might I do >that most efficiently? > >Right now I have this: > >series = [100] >for x in range(10): # just for testing > series.append(series[-1] - 1) > >But of course that only does it once, [ ... ]
You could try: series = [100] l = range(series[-1]-1, series[-1]-11, -1) #just for testing s.extend(sum(zip(l, l), ())) Times as faster than the series.extend([series[-1] - 1] * 2) for me. -- \S -- [EMAIL PROTECTED] -- http://www.chaos.org.uk/~sion/ ___ | "Frankly I have no feelings towards penguins one way or the other" \X/ | -- Arthur C. Clarke her nu becomeþ se bera eadward ofdun hlæddre heafdes bæce bump bump bump
-- http://mail.python.org/mailman/listinfo/python-list