Robert Kern wrote:
Mike Meyer wrote:

Ok, we've added list comprehensions to the language, and seen that
they were good. We've added generator expressions to the language, and
seen that they were good as well.

I'm left a bit confused, though - when would I use a list comp instead
of a generator expression if I'm going to require 2.4 anyway?

Never. If you really need a list

list(x*x for x in xrange(10))

Not quite true. If you discovered the unlikely scenario that the construction of a list from the generator expression was an efficiency bottleneck, you might choose a list comprehension -- they're slightly faster when you really do want a list:


$ python -m timeit "list(x*x for x in xrange(10))"
100000 loops, best of 3: 6.54 usec per loop

$ python -m timeit "[x*x for x in xrange(10)]"
100000 loops, best of 3: 5.08 usec per loop

STeVe
--
http://mail.python.org/mailman/listinfo/python-list

Reply via email to