lunes, 15 de febrero de 2010

Iteradores en python

Una de las cosas interesantes que tiene python es la construcción que permite hacer de iteradores. Desconozco si java lo permite hacer.
Aquí va la implementación:


"Created on 15/05/2010
@author: Bernardo
"
def millon():
i=0
while i < 1000000:
yield i
i+=1


Para llamarlo se hace de la siguiente manera:


f = millon()
print f.next(), f.next()


De esa manera se ahorra construir una lista de un millon de posiciones, reservar espacio, etc, etc. Se van devolviendo los valores en la medida que se necesitan.
Puede usarse:

print dir(f)

De esa manera se ven todas las operaciones asociadas a f.

Saludos!

No hay comentarios:

Publicar un comentario