1
resposta

[Projeto] QUANTAS VEZES A MENSAGEM SERÁ EXIBIDA?

Prezados(as),
Boa Tarde,

Segue a implementação para o exercício: Quantas vezes a mensagem será exibida?

for _ in range(5):
    print("Bem-vindo ao Buscante!")
1 resposta

Olá, Luiz Fernando. Como vai?

Sua resposta para o exercício está totalmente correta! O código que você compartilhou traduz perfeitamente a proposta da atividade.

Um ponto excelente na sua implementação, que demonstra uma ótima intimidade com as boas práticas do Python, foi o uso do caractere sublinhado (_) dentro do laço for.

Muitas pessoas iniciantes criam variáveis comuns ali (como for i in range(5):), mas quando não precisamos usar o número do índice dentro do bloco (já que o objetivo era apenas repetir o texto fixo), a convenção oficial do Python recomenda o uso do _. Isso deixa claro para qualquer outra pessoa que ler seu código que aquela é uma variável de descarte.

Para contribuir com seus estudos e enriquecer o debate com os colegas no fórum, preparei uma breve análise de como a função range() opera por trás das telas.


A Anatomia do range(5)

Muitos estudantes se confundem achando que o range(5) gera uma contagem de 1 a 5. Na verdade, por padrão, a computação e o Python começam a contar a partir do zero.

A função range(5) gera uma sequência de 5 números inteiros que segue a seguinte estrutura:

$${0, 1, 2, 3, 4}$$

O fluxo de execução que o Python faz em cada rodada do laço segue este caminho:

  • Rodada 1: O _ assume o valor 0 $\rightarrow$ Imprime "Bem-vindo ao Buscante!"
  • Rodada 2: O _ assume o valor 1 $\rightarrow$ Imprime "Bem-vindo ao Buscante!"
  • Rodada 3: O _ assume o valor 2 $\rightarrow$ Imprime "Bem-vindo ao Buscante!"
  • Rodada 4: O _ assume o valor 3 $\rightarrow$ Imprime "Bem-vindo ao Buscante!"
  • Rodada 5: O _ assume o valor 4 $\rightarrow$ Imprime "Bem-vindo ao Buscante!"

Como o limite superior (5) é exclusivo (ou seja, o Python para imediatamente antes de chegar nele), o laço se encerra com exatamente 5 exibições na tela.


Indo Além: E se quiséssemos mostrar o número da rodada?

Caso o exercício mudasse de escopo e exigisse que você mostrasse o número de cada iteração para o usuário (por exemplo, criando uma lista numerada de boas-vindas), aí sim valeria a pena trocar o _ por uma variável nomeada (como i ou rodada) e ajustar o início do range para começar do 1. Veja a alternativa:

# range(1, 6) começa no 1 e para antes do 6 (vai até o 5)
for rodada in range(1, 6):
    print(f"{rodada}º: Bem-vindo ao Buscante!")

Parabéns por manter o excelente ritmo de envios, a organização impecável e por aplicar as melhores convenções de sintaxe do Python nos seus desafios!

Espero que possa ter lhe ajudado!