Adicionei algumas outras opçãos ao código para deixar o jogo mais "bonito" e também um meio de entrar no laço novamente caso o usuário digite algo diferente das 3 opções de dificuldade (1, 2 e 3).
import random
from time import sleep
print('\033[31m*\033[m' * 35)
print('Bem vindo ao jogo de Adivinhação!....')
print('\033[31m*\033[m' * 35)
sleep(.8)
numero_secreto = random.randrange(1, 101)
total_tent = 0
nivel = 0
pontos = 1000
print('Estes são os níveis de dificuldade: ')
print(' [ 1 ] Fácil\n'
' [ 2 ] Médio\n'
' [ 3 ] Hard')
sleep(0.5)
while nivel > 3 or nivel < 1:
nivel = int(input('Qual nível é a sua escolha?: '))
if nivel == 1:
total_tent = 20
elif nivel == 2:
total_tent = 10
elif nivel == 3:
total_tent = 3
else:
print('Nível invalido, tente novamente\n')
for rodada in range(1, total_tent + 1):
print(f'Tentativa \033[36m{rodada}\033[m de \033[36m{total_tent}\033[m tentativas\n')
chute = int(input('Digite seu numero entre 1 e 100: '))
print('Você digitou \033[31m{}\033[m'.format(chute))
acertou = numero_secreto == chute
menor = numero_secreto > chute
maior = chute > numero_secreto
if chute < 1 or chute > 100:
print('\033[31mNúmero inválido\033[m, tente novamente\n')
continue
if acertou:
print(f'\033[31mVocê ganhou!!\033[m e fez \033[36m{pontos}\033[m pontos!!!')
break
else:
if menor:
print('Você errou, seu chute foi \033[31mmenor\033[m que o numero secreto\n')
elif maior:
print('Voce errou, seu chute foi \033[31mmaior\033[m que o número secreto\n')
pontos_perdidos = chute - numero_secreto
pontos = pontos - abs(pontos_perdidos)
print('\033[35mFim de jogo!\033[m')