Segue o código:
#Título
print("*********************************"'\n'
"Bem vindo ao jogo de Adivinhação!"'\n'
"*********************************"'\n')
#
#Número a ser advinhado:
numero_secreto = 42
#
#Número de tentativas e número inicial de tentativa:
max_tentativas = 5
tentativa = 1
#
#Criando o laço:
while (tentativa <= max_tentativas):
#
#Lendo o "chute" do usuário e mostrando que entendemos o chute:
print ("Tentativa {} de {}".format(tentativa, max_tentativas))
chute = int(input("Digite um número: "))
print ('\n'"Você digitou {}".format(chute))
#
#Verificar se o usuário acertou ou se o chute foi maior ou menor:
acerto = chute == numero_secreto
maior = chute > numero_secreto
menor = chute < numero_secreto
#
#Rotina para verificação do resultado
if (acerto):
print('\n'"Você acertou!!")
print('\n'"Obrigado por participar!"
'\n'"Fim de jogo!")
exit()
else:
if (maior):
print('\n'"Você errou!!"
'\n'"O seu chute foi maior que o número secreto"'\n')
elif (menor):
print('\n'"Você errou!!"
'\n'"O seu chute foi menor que o número secreto"'\n')
#
#Contador de tentativas
tentativa = tentativa + 1
#
print('\n'"Obrigado por participar!"
'\n'"Fim de jogo!")
Incomodou que mesmo acertando o jogo continuaria, o que não faz sentido. Então inclui o mesmo texto de finalização do jogo para o caso da pessoa acertar o número secreto e a função exit() logo depois, forçando o fim do jogo.
Senti falta de um "goto" no python3, que poderia ser usado para já pular para a mensagem final e encerrar o programa.