Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

[Dúvida] Erro no código

ME AJUDEM:

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

for projetos in projetos:
    if projeto is None:
        print('Projeto ausente')
    else:
        print(projeto)
1 resposta
solução!

Oi, Cean! Como vai?

Agradeço por compartilhar.

O erro no seu código ocorre devido ao nome das variáveis que você definiu dentro do laço de repetição. Note que você utilizou o nome projetos tanto para a lista quanto para o item individual no for, e depois tentou acessar o valor usando projeto (no singular).

Análise do Problema

  1. Conflito de nomes: Ao escrever for projetos in projetos:, você acaba substituindo a referência da sua lista original.
  2. Variável não definida: Dentro do bloco if, você utiliza projeto, mas essa variável não existe, pois você declarou o item do laço como projetos.

Resolução do Código

Para corrigir, basta utilizar um nome diferente para o item individual, garantindo que ele seja o mesmo utilizado dentro das verificações if e else. O padrão mais comum é usar o plural para a lista e o singular para o item:

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

# Alteramos para 'projeto' no singular para representar cada item da lista
for projeto in projetos:
    if projeto is None:
        print('Projeto ausente')
    else:
        print(projeto)

O que mudou?

  • Clareza: Agora o Python entende que, a cada iteração, ele deve pegar um elemento da lista projetos e guardar temporariamente na variável projeto.
  • Consistência: O nome usado no if projeto is None e no print(projeto) agora corresponde exatamente ao nome definido no início do laço.

Continue praticando, pois o domínio sobre os laços de repetição é um fundamento importante para avançar em Python. Qualquer outra dificuldade com a estrutura de repetição, estou aqui para ajudar.

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