Oi, Eduardo.
O uso do continue é uma maneira excelente de manter o seu código limpo, focando apenas no que realmente importa para a execução naquele momento. Enquanto o break interrompe o laço completamente, o continue funciona como um "atalho" para a próxima repetição.
Como o Python processa o continue?
No seu exemplo com a lista de livros, o continue age como um filtro de triagem:
- A verificação: O laço inicia e olha para o "estoque" de cada livro.
- O salto: Quando o Python encontra um livro com estoque igual a 0 (como "Dom Casmurro"), ele lê o comando
continue. Nesse instante, ele ignora todas as linhas que estão abaixo dele dentro do bloco for e volta imediatamente para o topo para pegar o próximo item da lista. - A execução: O comando
print só é alcançado se a condição do if for falsa. Ou seja, apenas os livros com estoque maior que zero conseguem "passar pelo filtro" e ter seus nomes exibidos.
Por que usar essa abordagem?
Utilizar o continue ajuda a evitar o excesso de recuos (identação) no código. Sem ele, você provavelmente teria que colocar todo o seu processamento principal dentro de um bloco if livro["estoque"] > 0:.
Com o continue, você "descarta" o que não quer logo no início e deixa o restante do código livre para as tarefas principais, o que torna a leitura muito mais fluida para outras pessoas que precisarem analisar seu trabalho.
É uma estratégia muito comum em sistemas de e-commerce e gestão de inventário, garantindo que o usuário veja apenas o que pode ser adquirido.
Você consegue imaginar como utilizaria o continue se, além do estoque, também precisasse filtrar livros que estão em uma categoria específica?
Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!