A quirk/gotcha of for i, x in enumerate(seq) when seq is empty
Paul Rubin
no.email at nospam.invalid
Thu Feb 23 20:21:32 EST 2012
Alex Willmer <alex at moreati.org.uk> writes:
> i = 0
> for x in seq:
> # do stuff
> i += 1
> print 'Processed %i records' % i
>
> Just thought it worth mentioning, curious to hear other options/
> improvements/corrections.
Stephen gave an alternate patch, but you are right, it is a pitfall that
can be easy to miss in simple testing.
A more "functional programming" approach might be:
def do_stuff(x): ...
n_records = sum(1 for _ in imap(do_stuff, seq))
More information about the Python-list
mailing list