Needless copying in iterations?

James Stroud jstroud at mbi.ucla.edu
Sat Sep 15 17:58:15 EDT 2007


Hello all,

I was staring at a segment of code that looked like this today:

    for something in stuff[x:y]:
      whatever(something)

and was wondering if the compiler really made a copy of the slice from 
stuff as the code seems to suggest, or does it find some way to produce 
an iterator without the need to make a copy (if stuff is a built-in 
sequence type)? Or would it be more efficient to do the more clumsy (in 
my opinion):

    for i in xrange(x, y):
      whatever(stuff[i])

James



More information about the Python-list mailing list