1
resposta

Tratar erro na entrada de usuário

Como impedir ou tratar caso o usuário entre com caracter que não seja número?

jogo = int(input("Qual jogo?")) #se eu entro com caracter ou espaço recebo erro

ValueError: invalid literal for int() with base 10: ''

1 resposta

Olá, tudo bem? Espero que sim!

Você pode realizar o tratamento de erros usando as cláusulas try e except, da seguinte forma:

try:
    jogo = int(input("Qual jogo?"))
except:
    print("O valor inserido precisa ser um número inteiro")

Você ainda pode tratar erros especificamente, utilizando o tipo de erro, por exemplo:

try:
    jogo = int(input("Qual jogo?"))
except ValueError:
    print("O valor inserido precisa ser um número inteiro")
    raise

Dessa forma, somente os erros do tipo ValueError terão essa mensagem especial, podendo ser adicionado por exemplo a cláusula raise, que faz com que o erro seja apresentado na tela.

Se quiser aprender mais sobre tratamento de erros, temos um curso sobre o assunto nesse link

Espero que tenha tirado sua dúvida.

Estou à disposição. Bons estudos!