Vídeo

Notas

Tipos de erros em Python

🎯 Tipos de Erros em Python

Em poucas palavras

Definição técnica ou simplificada do conceito.


📝 Notas e Desenvolvimento


🔗 Conexões e Contexto


📚 Referências e Fontes

Citações Diretas

📂 Outros Conteúdos Preservados

Tipos de erros em Python

Em Python, erros (ou exceções) são eventos que ocorrem durante a execução de um programa e interrompem o fluxo normal das instruções. É importante entender os diferentes tipos de erros para poder depurar e corrigir seu código de forma eficaz.

Aqui estão alguns dos tipos de erros mais comuns em Python:

  1. AttributeError: Ocorre quando você tenta acessar um atributo ou método que não existe em um objeto.
class Pessoa:
	def __init__(self, nome):
		self.nome = nome
 
pessoa = Pessoa("Alice")
 
### print(pessoa.idade)  # Isso causaria um AttributeError
 
  1. ImportError: Ocorre quando há um problema ao importar um módulo. Isso pode acontecer se o módulo não estiver instalado, se o nome estiver incorreto ou se o Python não conseguir encontrá-lo no caminho de importação.
 
### import modulo_inexistente  # Isso causaria um ImportError
 
  1. IndexError: Ocorre quando você tenta acessar um índice inválido em uma sequência (como uma lista, tupla ou string).
lista = [1, 2, 3]
 
### print(lista[3])  # Isso causaria um IndexError
 
  1. KeyError: Ocorre quando você tenta acessar uma chave que não existe em um dicionário.
dicionario = {"nome": "Alice", "idade": 30}
 
### print(dicionario["endereco"])  # Isso causaria um KeyError
 
  1. NameError: Ocorre quando você tenta usar uma variável que não foi definida.
 
### print(variavel_nao_definida)  # Isso causaria um NameError
 
  1. NotImplementedError: É usado como um marcador para indicar que um método ou função ainda não foi implementado. É comum em classes abstratas ou interfaces.
class Animal:
	def fazer_som(self):
		raise NotImplementedError("Subclasses devem implementar este método")
 
class Cachorro(Animal):
	def fazer_som(self):
		return "Au au!"
 
### animal = Animal()
 
 
 
### animal.fazer_som()  # Isso causaria um NotImplementedError
 
cachorro = Cachorro()
print(cachorro.fazer_som())
  1. StopIteration: É usado por iteradores para sinalizar que não há mais elementos a serem retornados.
meu_iterador = iter([1, 2, 3])
 
### next(meu_iterador)
 
 
 
### next(meu_iterador)
 
 
 
### next(meu_iterador)
 
 
 
### next(meu_iterador)  # Isso causaria um StopIteration
 
  1. SyntaxError: Ocorre quando há um erro na sintaxe do código Python. Isso geralmente indica um erro de digitação, um parêntese ou aspas não fechadas, ou o uso incorreto de palavras-chave.
 
### print("Olá, mundo"  # Isso causaria um SyntaxError (falta um parêntese)
 
  • IndentationError: Um tipo específico de SyntaxError que ocorre devido a problemas de indentação. Python usa indentação para definir blocos de código, então a indentação incorreta pode levar a erros.

    # def minha_funcao():
    # print("Olá")  # Isso causaria um IndentationError (indentação incorreta)
        ```
     
     
     
     
     
     
     
  1. TypeError: Ocorre quando uma operação ou função é aplicada a um objeto de tipo inadequado.
 
### print("Olá" + 5)  # Isso causaria um TypeError (não é possível concatenar string com inteiro)
 
  1. ValueError: Ocorre quando uma função recebe um argumento com o tipo correto, mas com um valor inválido.
 
### int("abc")  # Isso causaria um ValueError (não é possível converter "abc" para inteiro)
 

Como lidar com erros:

É importante tratar os erros em seu código para evitar que o programa seja interrompido abruptamente. Você pode usar blocos try…except para capturar e lidar com exceções:

try:
    # Código que pode gerar uma exceção
    resultado = 10 / 0
except ZeroDivisionError:
    # Lidar com a exceção
    print("Erro: divisão por zero!")

Referências:

Link ao original