Erros em Python: Por que ocorrem e como corrigi-los
Erros de programação são uma parte inevitável do processo de escrever código. Mesmo desenvolvedores experientes encontram várias exceções periodicamente. É importante não apenas saber quais erros existem em Python, mas também entender suas causas e métodos para corrigi-los adequadamente.
Conhecer os tipos de erros em Python ajuda você a diagnosticar problemas no código mais rapidamente e encontrar soluções eficientes. Neste artigo, vamos detalhar todas as principais categorias de erros em Python: sintáticos, lógicos, exceções de tempo de execução e como resolvê-los.
Erros de sintaxe em Python
O que são erros de sintaxe
Erros de sintaxe em Python ocorrem devido a violações das regras de escrita do código. O interpretador Python não conseguirá executar o programa até que todos os erros de sintaxe sejam corrigidos.
Causas comuns de erros de sintaxe
As principais causas de erros de sintaxe incluem:
- Parênteses, aspas ou dois-pontos ausentes
- Indentação incorreta no código
- Erros na digitação de palavras-chave do Python
- Uso incorreto de operadores
Exemplo de erro de sintaxe
if x > 0
print("Número positivo") # Faltou o dois-pontos
Erro: SyntaxError: invalid syntax
Solução para erro de sintaxe
if x > 0:
print("Número positivo")
SyntaxError: unexpected EOF while parsing
Causas do erro EOF
O erro "unexpected EOF while parsing" indica que o interpretador Python chegou ao final do arquivo sem encontrar o fechamento de uma construção sintática.
Causas comuns deste erro:
- Parênteses de fechamento ausentes de vários tipos
- Definição incompleta de funções ou classes
- Falta de elementos finais em construções de múltiplas linhas
Exemplo de erro EOF
def saudacao(nome):
print("Olá, " + nome # Parêntese de fechamento ausente
Erro: SyntaxError: unexpected EOF while parsing
Solução para erro EOF
def saudacao(nome):
print("Olá, " + nome)
Exceções de tempo de execução em Python
Características gerais dos erros runtime
Exceções de tempo de execução ocorrem durante a execução do programa, mesmo que a sintaxe esteja correta. Esses erros em Python só aparecem quando determinadas partes do código são executadas.
Principais tipos de erros runtime
As exceções de tempo de execução mais comuns:
- ZeroDivisionError - divisão por zero
- NameError - uso de variável não definida
- TypeError - tipo de dado incorreto para a operação
- ValueError - valor inválido para a função
- IndexError - índice fora do intervalo da lista
- KeyError - chave ausente no dicionário
- AttributeError - atributo ausente do objeto
ZeroDivisionError: division by zero
Causas do ZeroDivisionError
O erro ZeroDivisionError ocorre ao tentar dividir um número por zero. Este é um dos erros mais comuns em Python, especialmente ao trabalhar com cálculos matemáticos.
Exemplo de ZeroDivisionError
a = 10
b = 0
print(a / b)
Erro: ZeroDivisionError: division by zero
Solução para ZeroDivisionError
a = 10
b = 0
if b != 0:
print(a / b)
else:
print("Erro: divisão por zero não é permitida!")
Usando try-except para ZeroDivisionError
try:
resultado = a / b
print(resultado)
except ZeroDivisionError:
print("Divisão por zero não é permitida!")