Como programadores, es fácil que nos encontremos con la necesidad de hacer algo repetitivamente a un grupo de datos. Por ejemplo, dada una lista de números, sumarles a todos una cierta cantidad. O, dado un conjunto de palabras, averiguar cuántas letras tiene cada una.
Esto podemos hacerlo con un bucle while , pero es pesado y poco elegante. Afortunadamente, Python tiene otro tipo de bucle para estos casos; el bucle for.
Su sintaxis más simple es la siguiente (¡no te olvides los dos puntos que llevan siempre los bloques!):
for variable in lista:
    ....
    instrucciones que usan la variable
    ....
Con un ejemplo lo veremos mejor:
for nombre in ['Juan', 'Eva', 'Leire']:
    print "Hola, " + nombre
Al ejecutarlo, lo que obtenemos será
Hola, Juan
Hola, Eva
Hola, Leire
¿Por qué? for es un bucle que recorre todos los elementos de una lista y cada uno de ellos ('en cada pasada') lo almacena en la variable indicada. En el ejemplo, en la primera pasada la variable nombre contiene el valor 'Juan' y la orden print escribe en pantalla, entonces, 'Hola, Juan'. En la segunda pasada hace lo propio con 'Eva' y en la tercera con 'Leire'.
Otro ejemplo:
suma = 0
 
for i in [3, 5, 7, 9]:
    suma = suma + i
 
print 'La suma de los números es', suma
Salida:
La suma de los números es 24
Como suma vale inicialmente 0, en cada ciclo del bucle se añade el elemento de la lista que toca. En consecuencia, al salir del bucle, suma contiene la suma de todos ellos.