Oi Leonardo, tudo bom?
O que aconteceria se o usuário digitar um número diferente de 1, 2 e 3?
Pelo comportamento definido nos ifs, ele cairia em 1 se fosse digitado 1, 2 se fosse digitado 2 e 3 para qualquer outro número digitado. Inclusive, se você digitasse -1 o valor definido para total_de_tentativas seria 5 =)
Para resolver esse problema, poderiamos alterar o algoritmo para trabalhar de forma comparativa ao invés de assertiva:
if (nivel < 2):
total_de_tentativas = 20
elif (nivel < 3):
total_de_tentativas = 10
else:
total_de_tentativas = 5
Dessa forma, qualquer número digitado menor que 2 cairia no nível 1, se fosse digitado 2, cairia no nível 2 e qualquer número maior que 2 caíria no nível 3.
A abordagem que você colocou também é justa pois garante que qualquer número digitado fora do esperado retorne um direcionamento pro usuário. Acredito que ficou faltando apenas o print() para exibir no console:
else:
print("Vá para: pergunta")
Ou algo do tipo, com um while repetindo o print da pergunta até que um valor específico seja digitado:
digitouAlgo = false
while(!digitouAlgo):
print("Qual o nível de dificuldade?")
print("(1) Fácil (2) Médio (3) Difícil")
nivel = int(input("Defina o nível: "))
digitouAlgo = true
if (nivel == 1):
total_de_tentativas = 20
elif (nivel == 2):
total_de_tentativas = 10
elif(nivel==3):
total_de_tentativas = 5
else:
digitouAlgo = false
De qualquer forma, existem diversas maneiras de implementar essa funcionalidade mesmo mas acredito que a ideia da atividade seja introduzir o conceito de como as operações condicionais funcionam =)
Parabéns pelo questionamento das funcionalidades!
Abraço!