Solucionado (ver solução)

Importante

Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!

Solucionado
(ver solução)
2
respostas

[Projeto] Quantas vezes a mensagem será exibida?

Solução mais simples usando range

for i in range(5):
  print("Bem-vindo ao Buscante!")
2 respostas
solução!

Olá, Marcelo. Como vai?

O seu código ficou perfeito! Essa é a forma mais limpa, direta e elegante de repetir uma ação por um número determinado de vezes em Python. Você aplicou exatamente o que a comunidade chama de "padrão pythônico".

Respondendo à pergunta do título da atividade: a mensagem será exibida exatamente 5 vezes.

Como o Python interpreta esse código por trás dos panos?

Muitos programadores que estão começando acham que a variável i (o contador) é apenas um enfeite, mas ela desempenha um papel fundamental.

Quando você escreve range(5), o Python cria uma sequência numérica indexada que começa no 0 e vai até o 4 (o número 5 é exclusivo, ou isso significa que ele dita o limite, mas não entra na contagem).

A anatomia da execução desse laço segue o seguinte mapeamento passo a passo na memória:

  • 1ª rodada: i recebe o valor 0 $\rightarrow$ imprime "Bem-vindo ao Buscante!"
  • 2ª rodada: i recebe o valor 1 $\rightarrow$ imprime "Bem-vindo ao Buscante!"
  • 3ª rodada: i recebe o valor 2 $\rightarrow$ imprime "Bem-vindo ao Buscante!"
  • 4ª rodada: i recebe o valor 3 $\rightarrow$ imprime "Bem-vindo ao Buscante!"
  • 5ª rodada: i recebe o valor 4 $\rightarrow$ imprime "Bem-vindo ao Buscante!"

Como a sequência do range(5) chegou ao fim, o laço é encerrado com sucesso após as 5 impressões.

Uma dica de boa prática sobre a variável de descarte (_)

No seu código, você utilizou a letra i para receber o número de cada rodada. Isso está absolutamente correto e é o padrão de mercado.

Contudo, uma boa prática visual muito refinada em Python diz que: se você criou um laço apenas para repetir um texto e não vai usar o número do contador para nada dentro do bloco, substitua o i por um caractere de sublinhado (_).

Veja como fica o padrão profissional de descarte de variável:

# O uso do '_' avisa a outros programadores que o número do índice não importa aqui
for _ in range(5):
    print("Bem-vindo ao Buscante!")

Adotar o _ deixa o seu código ainda mais limpo, pois sinaliza de imediato para quem está lendo o script que a única intenção daquela linha é a repetição pura, sem manipulação de índices.

Parabéns por mais uma excelente resolução de exercício e por manter sua consistência de envios no fórum!

Espero que possa ter lhe ajudado!

Isso é sempre assim caractere _ para indicar que o indice é irrelevante mesmo num desempacotamento?