1
resposta

Como faço para retornar ao inicio?

Pensei em colocar mais uma opção caso o jogador coloque um número maior que 3, porém o jogo apenas fecha quando colocada a opção, e eu gostaria que o mesmo retornasse ao input para colocar novamente uma opção válida.

 numero_secreto = random.randint(0, 100)
    pontos=1000
    print("Qual o nível de dificuldade?")
    print("(1) Fácil  (2) médio (3) Difícil")

    nivel = int(input("Defina o nível: "))

    if nivel == 1:
        total_de_tentativas = 20
    elif nivel == 2:
        total_de_tentativas = 10
    elif nivel == 3:
        total_de_tentativas = 5
    else:
        print("Digite uma opção válida.")
        return nivel

1 resposta

Olá, Fernando!

Para repetir a leitura dos dados enquanto o valor digitado não for o desejado, basta colocar todo o código que envolve a leitura e a checagem do valor dentro de um laço de repetição. Nesse caso, creio que o comando do while seja o mais adequado.

Se você não conhece o comando do while, leia este artigo para entender melhor: https://woliveiras.com.br/posts/la%C3%A7os-de-repeti%C3%A7%C3%A3o-while-e-do-while/

Em Pyhton, não temos a estrutura do while, mas conseguimos simulá-la ao criar um while que roda em loop infinito (porque colocamos o valor True como condição de parada), até forçarmos sua interrupção com o comando break.

Ficaria mais ou menos assim:

numero_secreto = random.randint(0, 100)
pontos=1000
print("Qual o nível de dificuldade?")
print("(1) Fácil  (2) médio (3) Difícil")

while True:
    nivel = int(input("Defina o nível: "))
    if nivel == 1:
        total_de_tentativas = 20
        break
    elif nivel == 2:
        total_de_tentativas = 10
        break
    elif nivel == 3:
        total_de_tentativas = 5
        break
    else:
        print("Digite uma opção válida.")

return nivel

Espero ter ajudado!

Boa sorte em seus estudos!