← Questões de Programação

Programação · FGV · 2024

Questão comentada de Programação

A linguagem python tem sido empregada para automatização de processos, como por exemplo, fechar a conexão de um banco ao tratar um erro. No tratamento de exceções, a seguinte cláusula (ou bloco) garante a execução independentemente de uma exceção ter ocorrido ou não no código anterior:

Gabarito: D

Em Python, o tratamento de exceções costuma seguir a estrutura try/except/finally. Pense assim: o try é a área de risco, o except é o plano B quando algo dá errado, e o finally é o “arruma a casa antes de sair”, porque ele executa quase sempre, haja erro ou não. É exatamente isso que a questão cobra: a cláusula que garante execução independentemente de ter ocorrido exceção é o bloco finally. Ele é muito usado para liberar recursos, como fechar arquivo, encerrar conexão com banco de dados ou encerrar sessão. Isso evita deixar “porta aberta” depois que o programa termina sua tarefa. Se ocorrer uma exceção e ela for tratada, o finally ainda roda. Se não ocorrer exceção nenhuma, ele também roda. Por isso o gabarito é a letra D. Já as outras opções não têm essa função: except trata o erro, try delimita o código monitorado e raise serve para lançar exceções. Ou seja, a banca quer saber qual bloco executa mesmo quando o programa resolve fazer drama, e a resposta é o finally.

Continue treinando

Questões relacionadas