Notas das exceptions em Python 3.11+ (add_notes, __notes__)
This commit is contained in:
@@ -1,4 +1,4 @@
|
|||||||
# Levantando e tratando suas Exceptions (Exceções)
|
# Notas das exceptions em Python (add_notes, __notes__)
|
||||||
# https://docs.python.org/3/library/exceptions.html
|
# https://docs.python.org/3/library/exceptions.html
|
||||||
# Levantando (raise) / Lançando (throw) exceções
|
# Levantando (raise) / Lançando (throw) exceções
|
||||||
# Relançando exceções
|
# Relançando exceções
|
||||||
@@ -13,6 +13,8 @@ class OutroError(Exception):
|
|||||||
|
|
||||||
def levantar():
|
def levantar():
|
||||||
exception_ = MeuError('a', 'b', 'c')
|
exception_ = MeuError('a', 'b', 'c')
|
||||||
|
exception_.add_note('Olha a nota 1')
|
||||||
|
exception_.add_note('você errou isso')
|
||||||
raise exception_
|
raise exception_
|
||||||
|
|
||||||
|
|
||||||
@@ -23,4 +25,6 @@ except (MeuError, ZeroDivisionError) as error:
|
|||||||
print(error.args)
|
print(error.args)
|
||||||
print()
|
print()
|
||||||
exception_ = OutroError('Vou lançar de novo')
|
exception_ = OutroError('Vou lançar de novo')
|
||||||
|
exception_.__notes__ = error.__notes__.copy()
|
||||||
|
exception_.add_note('Mais uma nota')
|
||||||
raise exception_ from error
|
raise exception_ from error
|
||||||
|
|||||||
Reference in New Issue
Block a user