Re: looping versus comprehension

Discussion in 'Python' started by Robin Becker, Jan 30, 2013.

  1. Robin Becker

    Robin Becker Guest

    On 30/01/2013 15:49, Chris Angelico wrote:
    > On Thu, Jan 31, 2013 at 1:58 AM, Robin Becker <> wrote:
    >> however, when I tried an experiment in python 2.7 using the script below I
    >> find that the looping algorithms perform better. A naive loop using list +=
    >> list would appear to be an O(n**2) operation, but python seems to be doing
    >> better than that. Also why does the append version fail so dismally. Is my
    >> test coded wrongly or is pre-allocation of the list making this better than
    >> expected?

    >
    > First off, are you aware that your first three blocks of code and your
    > last four produce different results? The first ones flatten the list,
    > the others simply convert tuples to lists. With n = 3:
    >
    >>>> points = []
    >>>> for xy in row:

    > points += [xy[0],xy[1]]
    >>>> points

    > [0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6]
    >>>> map(list,row)

    > [[0, 1], [1, 2], [2, 3], [3, 4], [4, 5], [5, 6]]
    >
    > Once that's sorted out, then timings can be played with. But it's
    > worth noting that list appending is not going to be O(N*N), because
    > it's going to allow room for expansion.
    >
    > ChrisA
    >


    No I missed that :( the list is a flattened one.

    That'll teach me not to copy the code from the users without checking. Now you
    point it out it's clear that his code is doing something different. Presumably
    it's not drawing the same thing at all :) no wonder it got much faster.
    --
    Robin Becker
     
    Robin Becker, Jan 30, 2013
    #1
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. Vedran Furac(
    Replies:
    4
    Views:
    330
    Marc 'BlackJack' Rintsch
    Dec 19, 2008
  2. Paul Butcher
    Replies:
    12
    Views:
    730
    Gary Wright
    Nov 28, 2007
  3. Terry Reedy
    Replies:
    14
    Views:
    315
    Tim Golden
    Aug 25, 2012
  4. Robin Becker

    looping versus comprehension

    Robin Becker, Jan 30, 2013, in forum: Python
    Replies:
    0
    Views:
    100
    Robin Becker
    Jan 30, 2013
  5. Chris Angelico

    Re: looping versus comprehension

    Chris Angelico, Jan 30, 2013, in forum: Python
    Replies:
    2
    Views:
    124
    Roy Smith
    Jan 31, 2013
Loading...

Share This Page