Imagem de fundo

Considere o trecho de código a seguir. def...

Considere o trecho de código a seguir.


def carregar_config(path):

try:

with open(path) as f:

conf = f.read()

except Exception as e:

log = f"Falha genérica: {e}"

except FileNotFoundError as e:

log = f"Arquivo ausente: {e}"


Sobre o efeito da ordem dos blocos except, é correto afirmar que


A

o bloco except Exception torna o except FileNotFoundError inatingível, pois captura antes todas as exceções, incluindo FileNotFoundError.


B

a ordem dos except é irrelevante nesse código, já que o interpretador escolhe automaticamente o mais específico para tratar os erros.


C

a classe FileNotFoundError não herda de Exception, logo os blocos são independentes.


D

o código é inválido, porque dois except nunca podem coexistir no mesmo try.


E

o interpretador sempre prioriza o último except declarado.