top of page

Script Aula 9 - Tratamento de Exceções: TRY, EXCEPT, ELSE e FINALLY

  • Foto do escritor: Adilson Padovan Junior
    Adilson Padovan Junior
  • 13 de abr. de 2024
  • 2 min de leitura


Link da Aula - Curso Completo YouTube (@profadilson):


Script (Python) da Aula:


# Tratamento de Exceções: try, except, 
# else e finally para tratar erros.
# try: é usado para testar um bloco de código 
# quanto a erros. O código dentro do bloco try é executado 
# normalmente. Se ocorrer um erro, a execução passa para 
# o bloco except.
# except: Este bloco permite que o programa lide com o 
# erro detectado no bloco try. Podemos especificar 
# diferentes blocos except para tratar diferentes 
# tipos de erros. No exemplo abaixo, tratamos 
# especificamente 'ZeroDivisionError' e 'TypeError', 
# que são tipos comuns de exceções que podem ocorrer 
# em uma operação matemática como a do exemplo abaixo.
# else: Se nenhum erro ocorrer no bloco try, o bloco 
# else é executado. É útil para código que deve ser 
# executado quando o bloco try não gera uma exceção.
# finally: Este bloco é executado independentemente 
# de ocorrer uma exceção ou não, e é geralmente usado 
# para realizar ações de limpeza, como fechar arquivos 
# ou liberar recursos externos.
# Exemplo de tratamento de exceções em Python
def dividir(a, b):
    try: # Tentar calcular operação:
        resultado = a / b
    except ZeroDivisionError: # Exceto se ...
        print("Erro: Não é possível dividir por zero.")
        print("vou resolver esse erro para você")
        resultado = a + b
        print(f'o resultado agora é uma soma {resultado}')
    except TypeError: # Exceto se...
        print("Erro: Tipo de dado não suportado"
              " para a divisão.")
    else: # Se não ...
        print(f"Resultado da divisão: {resultado}")
    finally: # Finalmente ...
        print("Esta mensagem é impressa independente de "
              "ocorrer uma exceção ou não.")
print("Teste 1: Divisão normal")
dividir(10, 2) # Inteiro
dividir(10, 2.5) # Float
print("\nTeste 2: Divisão por zero")
dividir(10, 0)
print("\nTeste 3: Divisão com tipo de"
      "dado incompatível")
dividir(10, "2")
# Outro Exemplo:
def soma(a, b):
    try:
        resultado = a + b
    except TypeError:
        print("Erro: Ambos os valores devem ser"
              " numéricos para a adição.")
    else:
        print(f"Resultado da adição: {resultado}")
    finally:
        print("Esta mensagem é impressa "
              "independentemente de ocorrer uma "
              "exceção ou não.")
print("Teste 1: Adição normal")
soma(5, 3)
print("\nTeste 2: Adição com um tipo de "
      "dado incompatível")
soma(5, "dois")

 
 
 

Comentários


Faça parte da nossa lista de emails

Obrigado(a)!

Sejam bem vindos!

Não se esqueça de se inscrever no canal:

bottom of page