1
resposta

08 Organizando seu portfólio

Segue resolução

#Lista de projetos do portfólio da Ana
projetos = ["website", "jogo", "análise de dados", None, "aplicativo móvel"]

#Percorrendo a lista de projetos
for projeto in projetos:
# Verificando se o projeto atual é nulo (None)
if projeto is None:
print("Projeto ausente")
else:
print(f"Projeto: {projeto}")

1 resposta

Olá, Deivide. Como vai?

Mais uma excelente resolução! Identificar e tratar valores nulos (None em Python) dentro de uma lista é um cenário extremamente comum na rotina de quem trabalha com dados.

O seu código está perfeito: você usou o laço for para percorrer a lista e aplicou a estrutura condicional com o operador is None para capturar o projeto ausente, garantindo que o programa dê uma resposta controlada em vez de estourar um erro ou exibir uma informação feia para o usuário final.

Para agregar ainda mais valor ao seu aprendizado, separei duas dicas de palavras-chave estruturais que o Python oferece para controle de laços (continue e break) e que se encaixam perfeitamente nesse tipo de problema:


1. Pulando o item nulo com o continue

Imagine que, no seu relatório de portfólio, você não queira exibir a frase "Projeto ausente". Você quer apenas que o Python ignore o valor None e passe direto para o próximo projeto válido da lista.

Para fazer isso de forma elegante, usamos a palavra-chave continue. Quando o Python encontra o continue, ele interrompe a iteração atual do laço e volta imediatamente para o topo do for para processar o próximo item:

projetos = ["website", "jogo", "análise de dados", None, "aplicativo móvel"]

for projeto in projetos:
    if projeto is None:
        continue  # Ignora o restante do bloco abaixo e pula para o "aplicativo móvel"
        
    print(f"Projeto válido: {projeto}")

2. Interrompendo a busca com o break

Agora pense em outro cenário: você está varrendo uma lista gigante de dados de vendas e precisa parar o processamento imediatamente se encontrar qualquer linha corrompida ou vazia (None), pois isso indicaria que o relatório está incompleto.

Nesse caso, usamos o break. Ele não pula para o próximo item; ele quebra e encerra o laço for por completo:

for projeto in projetos:
    if projeto is None:
        print("Erro: Portfólio corrompido! Interrompendo leitura.")
        break  # O laço para aqui e o "aplicativo móvel" nem chega a ser testado
        
    print(f"Lendo projeto: {projeto}")

Dominar o uso de if projeto is None junto com continue e break vai te dar um controle absoluto sobre a higienização de bases de dados antes de gerar qualquer gráfico ou análise.

Parabéns pela consistência nos estudos e por movimentar o fórum com ótimas soluções!

Espero que possa ter lhe ajudado!