From 60724ded0ec7f62f1e0bc9ae03b14a1b35b3a26c Mon Sep 17 00:00:00 2001 From: Vitor Buxbaum Date: Sat, 3 Apr 2021 11:17:18 -0300 Subject: [PATCH] =?UTF-8?q?1.20=20-=20Implementa=C3=A7=C3=A3o=20e=20assert?= =?UTF-8?q?s?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- 1_introducao/20_excecoes.py | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 1_introducao/20_excecoes.py diff --git a/1_introducao/20_excecoes.py b/1_introducao/20_excecoes.py new file mode 100644 index 0000000..f051cbb --- /dev/null +++ b/1_introducao/20_excecoes.py @@ -0,0 +1,23 @@ +class Divisor: + def divisao_except(a, b): + try: + if not b: + raise Exception("Divisão por 0") + return a / b + except Exception as erro: + return str(erro) + + def divisao_raise(a, b): + if not b: + raise Exception("Divisão por 0, raise externo") + return a / b + + +if __name__ == "__main__": + assert Divisor.divisao_except(3, 2) == 1.5 + assert Divisor.divisao_except(3, 0) == "Divisão por 0" + + try: + Divisor.divisao_raise(3, 0) + except Exception as erro: + assert str(erro) == "Divisão por 0, raise externo", erro