Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Desafio: Organizando_projeto

def organizando_projeto():
    projetos = ["website", "jogo", "análise de dados", None, "aplicativo móvel"]
    for projeto in projetos:
        if projeto is None:
         return 'Projeto ausente'

projeto_ausente = organizando_projeto()
print(projeto_ausente)```
2 respostas
solução!

Olá, Felipe. Como vai?

Parabéns por mais um desafio concluído! É muito interessante ver como você está aplicando o Python para resolver problemas de organização que podem ser facilmente transportados para o seu dia a dia como Auxiliar de Estoque — como identificar um item faltante em uma lista de inventário, por exemplo.

Seu código utiliza uma estrutura lógica muito importante: a verificação de valores nulos (None). No mundo dos dados, lidar com informações ausentes é uma das tarefas mais comuns e essenciais.

Gostaria de destacar dois pontos técnicos fundamentais sobre o comportamento do seu código:

1. O comportamento do return

No seu código, você usou o return. É importante lembrar que, assim que o Python encontra um return dentro de uma função, ele encerra a execução dela imediatamente.

  • No seu caso, o laço for percorre "website", "jogo" e "análise de dados". Quando ele chega no None, ele retorna a mensagem e para.
  • Se houvesse outro None depois de "aplicativo móvel", a função nem chegaria a vê-lo.

2. return vs print

Como você está imprimindo o resultado da função (print(projeto_ausente)), o fluxo está correto. Se a lista não tivesse nenhum None, sua função percorreria todos os itens e, ao final, retornaria None (o padrão do Python quando não há um return explícito), o que faria o seu print exibir None.


**Dica de Ouro: continue vs break**

Dependendo do seu objetivo no estoque, você pode querer apenas pular os itens vazios ou parar tudo.

  • Se quiser apenas avisar quais estão ausentes mas continuar verificando o resto da lista, usamos o print com continue.
  • Se quiser parar a verificação no primeiro erro, o seu return (ou um break) é o ideal.

Veja uma variação caso você quisesse apenas listar o que está faltando sem parar o programa:

def verificar_estoque():
    projetos = ["website", "jogo", "análise de dados", None, "aplicativo móvel"]
    for projeto in projetos:
        if projeto is None:
            print("Atenção: Existe um item ausente na lista!")
        else:
            print(f"Projeto {projeto} verificado com sucesso.")

verificar_estoque()

Você prefere que o sistema pare no primeiro erro encontrado ou que ele gere um relatório completo de tudo o que está faltando no final?

Relatório com todos o itens