Laço foreach
# Laço foreach

For each (ou foreach), em português para cada, é uma expressão idiomática de linguagem de computador para travessia de itens em um coleção. Foreach geralmente é usada em lugar de uma declaração for padrão. Ao contrário de outras construções de loop for, no entanto, loops foreach geralmente mantêm um contador não explícito: eles basicamente dizem "faça isso para tudo dentro deste conjunto (set)", em vez de "faça isto x vezes". Isso evita possíveis erros off-by-one e torna o código mais fácil de ler. Em linguagens orientadas a objetos um iterador, mesmo que implícito, é frequentemente utilizado como meio de travessia.

## Sintaxe

A sintaxe varia entre as linguagens. A maioria delas usam a palavra simples for, mais ou menos da seguinte forma:

## Suporte de linguagens
### Python

A atribuição de tupla de Python, totalmente disponível em seu loop foreach, também torna trivial iterar em pares (chave, valor) em arrays associativos:
Como for ... in é o único tipo de loop em Python, o equivalente ao loop "contador" encontrado em outras linguagens é:
... apesar de que usar a função enumerate é considerado mais "Pythônico":