FC ConcursosFC Concursos

Questão FC331169

Analise o código Python a seguir. x = 0 y = 20 try: print (y/x) except: print("Deu erro!") else: print("Ok") finally: print ("The end") A saída produzida pela execução desse trecho

Linguagens de Programação

FGV · 2022

Analise o código Python a seguir.

 

x = 0

y = 20

try:

print (y/x)

except:

print("Deu erro!")

else:

print("Ok")

finally:

print ("The end")

 

A saída produzida pela execução desse trecho é:

  1. None

    The end

  2. Deu erro!

    The end

  3. Deu erro!

    Ok

  4. Ok

    The end

  5. None

    Ok

    The end

Mostrar resposta e comentário

Gabarito

B

Comentário do professor

O bloco try tenta executar a expressão \(y/x\). Com \(x = 0\) e \(y = 20\) ocorre uma divisão por zero, gerando uma exceção do tipo ZeroDivisionError.

Ao ocorrer essa exceção, a execução salta do try para o bloco except, que contém o comando de impressão. Por isso é exibido primeiro o texto Deu erro!.

O bloco else só é executado quando não há exceção no try; como houve erro, o else é ignorado.

O bloco finally é sempre executado, ocorrendo independentemente de sucesso ou falha no try. Assim, após o except será impresso The end.

Portanto a saída aparece na ordem: Deu erro! seguido de The end.

Conteúdo do catálogo FC Concursos · Atualizado em

Continue aprendendo