try: print(4/0) XPTO: print("Erro na Operação") Considerando o trecho de código em Python precedente, assinale a opção que apresenta o comando que deve substituir os caracteres XPTO para se realizar o tratamento da exceção do código.
- A)else
else é usado para executar um bloco apenas quando não ocorre exceção no try, então não serve para capturar o erro.
- B)finally
finally é executado sempre, com ou sem exceção, mas não é o comando de tratamento da exceção.
- C)catch
catch não é a palavra-chave do Python para exceções; aparece em outras linguagens, como Java e C#.
- D)except
except é a cláusula correta para tratar a exceção disparada no bloco try.
- E)throw
throw não é usado em Python para tratar exceções; em geral, a ideia de lançar exceções aparece com raise.
Gabarito: D
Em Python, o tratamento de exceções é feito com a estrutura try/except. Você coloca no try o trecho que pode falhar e, se der erro, o fluxo pula para o bloco de tratamento. Neste exemplo, 4/0 gera ZeroDivisionError, então o print do erro é executado em vez de o programa quebrar de vez. É o famoso plano B do código: se a operação der ruim, você mostra a mensagem amigável e segue a vida.