mult-indexed xrange?
Jason Orendorff
jason at jorendorff.com
Mon Mar 4 23:06:24 EST 2002
Huaiyu Zhu wrote:
> I forgot to mention: without generating temporary lists.
>
> >
> >for (x,y) in [(i,j) for i in range(2) for j in range(3) ]:
> > print x,y
> >0 0 0
> >0 0 1
> ...
>
> Is list comprehension lazy, ie. without generating the actual list?
No, list comprehensions are eager.
You want generators:
from __future__ import generators
def pairs(n, m):
for i in xrange(n):
for j in xrange(m):
yield (i, j)
for (x, y) in pairs(2, 3):
print x, y
## Jason Orendorff http://www.jorendorff.com/
More information about the Python-list
mailing list