Python · Intermediário · Português · Técnico
iterador
Objeto que entrega os itens um a um por meio de __next__ e avisa o fim com StopIteration. O for e a função next() trabalham em cima dele.
Onde usar
Aparece ao percorrer arquivos e geradores e ao implementar classes que podem ser usadas num for. Um iterador se esgota depois de percorrido, e uma segunda passada sai vazia.
Em código
it = iter(['a', 'b'])
print(next(it))
print(next(it))
print(next(it, 'fim'))Exemplos
O laço pede um iterador ao iterável com iter().
Esse iterador já esgotou, por isso o segundo loop não imprime nada.
Cuidado
Não confunda com iterável: o iterável cria um iterador novo a cada iter(), enquanto o iterador é de uso único.
Sinônimos
iterator