1
resposta

12 - Utilidade do continue em laços

2 - Utilidade do continue em laços

Ana está implementando um sistema de filtragem de livros no Buscante. A funcionalidade deve percorrer uma lista de livros e exibir o nome de cada livro disponível em estoque. No entanto, se o livro estiver esgotado, ele deve ser ignorado durante a iteração.

livros = [ {"nome": "1984", "estoque": 5}, {"nome": "Dom Casmurro", "estoque": 0}, {"nome": "O Pequeno Príncipe", "estoque": 3}, {"nome": "O Hobbit", "estoque": 0}, {"nome": "Orgulho e Preconceito", "estoque": 2} ]

Crie um programa que ajude Ana a exibir somente os livros que possuem estoque disponível, no formato: "Livro disponível: ".

Saída esperada:

image.png

livros = [
    {"nome": "1984", "estoque": 5},
    {"nome": "Dom Casmurro", "estoque": 0},
    {"nome": "O Pequeno Príncipe", "estoque": 3},
    {"nome": "O Hobbit", "estoque": 0},
    {"nome": "Orgulho e Preconceito", "estoque": 2}
]

for livro in livros:
    if livro["estoque"] == 0:
        continue
    print(f"Livro disponível: {livro['nome']}")
1 resposta

Olá, Igor! Como vai?

Agradeço por compartilhar

Sua solução ficou correta: o for percorre cada livro da lista, verifica o valor de estoque e usa o continue para pular os itens esgotados, exibindo apenas os livros disponíveis.

Uma dica interessante para o futuro é testar a condição de forma mais direta, usando <= 0 caso exista a chance de algum estoque vir negativo por erro de cadastro.

for livro in livros:
    if livro["estoque"] <= 0:
        continue

    print(f"Livro disponivel: {livro['nome']}")

Esse código ignora livros sem estoque válido e mostra somente os que podem ser exibidos como disponíveis.

Na sua visão, isolar a regra de corte usando o comando continue tornou o gerenciamento da exibição do catálogo mais direto do que se você precisasse envelopar o comando de impressão dentro de um bloco condicional if tradicional para verificar os saldos positivos?

Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!