1
resposta

Quantas vezes a mensagem será exibida?

def titulo(texto):
print('=' * len(texto))
print(texto)
print('=' * len(texto))

def texto():
txt = str(input('Qual mensagem você quer exibir? '))
return txt

def apresentacao_mensagem(txt):
for _ in range(5):
print(txt)

def main():
titulo('EXIBIÇÃO DE MENSAGEM?')
txt = texto()
apresentacao_mensagem(txt)

if name == 'main':
main()

1 resposta

Olá, Giovanni. Como vai?

Analisando a estrutura do seu código, a mensagem digitada pelo usuário será exibida exatamente 5 vezes.

O segredo para entender essa quantidade está na função apresentacao_mensagem(txt). Dentro dela, você utilizou a estrutura de repetição for _ in range(5):.

O método range(5) do Python gera uma sequência de 5 números (que vai de 0 a 4). Como o laço roda uma vez para cada número dessa sequência, o comando print(txt) que está dentro do bloco será executado 5 vezes consecutivas. O uso do underline (_) no lugar de uma variável (como um i ou contador) é, inclusive, uma excelente prática em Python quando não precisamos utilizar o valor do índice dentro do laço, apenas repetir a ação.

Apenas como um ponto de atenção para que o seu código funcione perfeitamente quando você for executá-lo no terminal, notei um pequeno detalhe na última linha:

if __name__ == '__main__':
    main()
  • Nota importante: No Python, as variáveis internas que gerenciam a execução do script utilizam dois underlines antes e depois do nome (__name__ e '__main__'). No seu código original, faltaram os underlines, o que faria com que a função main() não fosse chamada automaticamente.

Garantindo esse ajuste na sintaxe, a sequência de execução será:

  1. O programa chama a main().
  2. A função titulo imprime as linhas decorativas baseadas no tamanho do texto.
  3. A função texto pede a mensagem ao usuário.
  4. A função apresentacao_mensagem entra em ação com o laço for e repete o print as 5 vezes.

Espero que possa ter lhe ajudado!