Printing n elements per line in a list
John Machin
sjmachin at lexicon.net
Wed Aug 16 04:46:24 EDT 2006
Gerard Flanagan wrote:
>
> just variations on previous answers:
>
> rng = range(1,101)
>
> #ad hoc
> for line in ( rng[i:i+5] for i in xrange(0,100,5) ):
> print ' '.join(map(str,line))
>
> #in general
> def lines( seq, count=1 ):
> n = len(seq)
> for x in ( seq[i:i+count] for i in xrange(0,n,count) ):
> yield x
>
Don't those last two lines deflate to:
for i in xrange(0,n,count):
yield seq[i:i+count]
???
More information about the Python-list
mailing list