def gen_pares(): """ Gera números pares entre 0 e 20 """ i = 0 while i <= 20: yield i i += 2 # Mostra cada número e passa para o próximo for n in gen_pares(): print n import os # Encontra arquivos recursivamente def find(path='.'): for item in os.listdir(path): fn = os.path.normpath(os.path.join(path, item)) if os.path.isdir(fn): for f in find(fn): yield f else: yield fn # A cada iteração, o gerador devolve # um novo nome de arquivo for fn in find(): print fn