Python Tentar Exceto

Usando Python try except com exemplos , discutiremos Python try except para que você possa aprender mais sobre ele.

Exceções podem ser tratadas com try e except. Durante a execução de um programa, podem ocorrer exceções. O termo “exceção” refere-se a erros que ocorrem quando um programa está sendo executado.

Python Tentar Exceto

O interpretador Python não informará se houver algum erro de sintaxe (falhas gramaticais), mas será encerrado sem aviso.

Com Python try except , o bloco try pode ser usado para testar erros em um bloco de código.

Quando ocorre um erro, você pode tratá-lo com o bloco except . Se não houver erro, você pode executar o código no bloco else .

Não importa o que digam os blocos try e except, o bloco final executará o código.



Manipulação de exceção do Python

Normalmente, o Python irá gerar uma mensagem de erro se ocorrer um erro, ou exceção, como chamamos.

Python try except pode ser usado para lidar com essas exceções:

Haverá uma exceção lançada porque mrx não foi declarado no bloco try:

Example

1
2
3
4
try:
print(mrx)
except:
print("An exception occurred")
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Devido a um erro no bloco try , o bloco except será executado em seu lugar.

Os blocos Try impedem que o programa trave e gere erros:

A instrução a seguir gerará um erro porque mrx não foi especificado:

Example

1
print(mrx)
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Outro

A instrução else pode ser aplicada para criar um bloco de código que é executado se nenhum erro for gerado:

Aqui, não há erro gerado pelo bloco try:

Example

1
2
3
4
5
6
7
8
9
#Try raises no errors, so else is executed:
try:
print("First Learn Python")
except:
print("There is something wrong")
else:
print("This msg is printed by else.")
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Muitas exceções do Python

Usando Python try except , você pode criar quantos blocos de exceção quiser. Por exemplo, se você deseja executar um bloco especial para um erro específico:

Você deve imprimir uma mensagem se NameError for lançado e outra se outros erros forem lançados:

Example

1
2
3
4
5
6
7
8
9
#Because mrx is not specified, the try block will generate a NameError:
try:
print(mrx)
except NameError:
print("Variable mrx is not declared")
except:
print("There is an error")
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Levantar uma exceção

Uma exceção pode ser lançada por um desenvolvedor Python se uma condição for atendida.

Exceções são lançadas (ou levantadas) usando a instrução raise .

No caso de mrx abaixo de zero, pare o programa e gere um erro:

Example

1
2
3
4
5
mrx = -1
if mrx < 0:
raise Exception("The number below 0 is not possible")
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

As exceções são levantadas pela implementação da instrução raise.

Existe a opção de definir o tipo de erro a ser levantado, e o texto a ser impresso ao usuário.

Um TypeError será levantado se mrx não for um número inteiro:

Example

1
2
3
4
5
mrx = "Learn Python"
if not type(mrx) is int:
raise TypeError("Integers are the only acceptable values")
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Finalmente

Independentemente de o bloco try gerar um erro, o bloco final será executado.

Executar

Example

1
2
3
4
5
6
7
8
9
#Even if there are errors in the try block, the finally block gets executed:
try:
print(mrx)
except:
print("There is something missing.")
finally:
print("The 'try except' is finished")
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Ao fechar objetos e limpar recursos, isso pode ser benéfico:

Abra e grave em um arquivo não gravável:

Example

1
2
3
4
5
6
7
8
9
10
11
12
13
#If a read-only file is attempted to be written to, the try block will raise an error:
try:
f = open("unreadablefile.txt")
try:
f.write("Elon Musk")
except:
print("The file could not be written because of an error")
finally:
f.close()
except:
print("There was a problem opening the file")
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Os objetos de arquivo não precisam permanecer abertos para que o programa continue.


Teste do Python, exceto benefícios

A seguir estão alguns benefícios de usar try-exceptem Python:

  1. Ao usar try-except, você pode lidar com erros e exceções que, de outra forma, fariam seu programa terminar abruptamente. Em vez de travar, você pode detectar exceções específicas e executar as ações apropriadas, como exibir uma mensagem de erro, registrar a exceção ou tentar se recuperar do erro.
  2. try-exceptaumenta a robustez do seu código. Ele permite antecipar e lidar com possíveis erros, garantindo que seu programa possa lidar com situações inesperadas sem travar. Isso é especialmente importante ao trabalhar com recursos externos, operações de rede ou entrada do usuário, onde erros podem ocorrer com frequência.
  3. Com try-except, você tem mais controle sobre o fluxo do seu programa. Você pode capturar exceções e executar caminhos de código alternativos, permitindo que seu programa continue a execução mesmo se certas operações falharem. Isso permite lidar com erros e continuar executando a lógica do programa conforme desejado.
  4. try-exceptfornece a capacidade de capturar e manipular exceções de maneira controlada. Você pode registrar ou relatar a ocorrência de exceções, incluindo informações relevantes sobre o erro, como rastreamento de pilha ou mensagens de erro específicas. Isso ajuda na depuração e solução de problemas, facilitando a identificação e resolução de problemas em seu código.
  5. O Python permite que você capture tipos específicos de exceções usando diferentes exceptblocos. Isso lhe dá um controle refinado sobre o tratamento de diferentes tipos de erros individualmente. Você pode optar por lidar com exceções específicas de maneira diferente com base em sua natureza, permitindo estratégias de tratamento e recuperação de erros mais precisas.
Deixe sua reação abaixo e vamos trabalhar juntos para tornar este site um lugar excepcional para todos.
Nós valorizamos o seu feedback.
+1
0
+1
0
+1
0
+1
0
+1
0
+1
0
+1
0

Assine a nossa newsletter
Digite seu e-mail para receber um resumo semanal de nossos melhores posts. Saber mais!
ícone