pythonic way to do something N times without an index variable?

Manuel Araoz picture Manuel Araoz · Jun 4, 2010 · Viewed 117.5k times · Source

Every day I love python more and more.

Today, I was writing some code like:

for i in xrange(N):
    do_something()

I had to do something N times. But each time didn't depend on the value of i (index variable). I realized that I was creating a variable I never used (i), and I thought "There surely is a more pythonic way of doing this without the need for that useless index variable."

So... the question is: do you know how to do this simple task in a more (pythonic) beautiful way?

Answer

Alex Martelli picture Alex Martelli · Jun 4, 2010

A slightly faster approach than looping on xrange(N) is:

import itertools

for _ in itertools.repeat(None, N):
    do_something()