Mindmap
Debugando e Tratando Erros
Inhalt der Mindmap
Debugando e Tratando Erros
Erros mais comuns
- É importante aprender a ler a saída do erro(mensagem) mostrada ao acontecer algum erro na compilação. Exceptions e Erros são sinônimos na programação
- SintaxError: Ocorre quano o Python encontra um erro de sintaxe.
- NameError: Ocorre quando uma variável ou função não é definida.
- TypeError: Ocorre quando uma função/operação/ação é aplicada a um tipo errado.
- IndexError: Ocorre quando tentamos acessar um elemento em uma lista ou outro tipo de dado indexado utilizando um índice inválido.
- ValueError: Ocorre quando uma função/operação built-in (integrada) recebe um argumento com tipo correto mas valor inapropriado.
- KeyError: Ocorre quando tentamos acessar um dicionário com uma chave que não existe.
- AttributeErro: Ocorre quando uma variável não tem um atributo/função.
- IdentationError: Ocorre quando não respeitamos a indentação do Python (4 espaços)
Levantando os próprios erros com raise
- Não é uma função. É uma palavra reservada, assim como def ou qualquer outra em Python
- Usada para imprimir uma mensagem específica num erro em particular
- raise TypeError('cor precisa ser uma string')
- Usada para imprimir uma mensagem específica num erro em particular
- Não é uma função. É uma palavra reservada, assim como def ou qualquer outra em Python
try/except
- Utilizamos o bloco try/except para tratar erros que podem ocorrer no nosso código. Previnindo assim que o programa pare de funcionar e o usuário receba mensagens de erro inesperadas.
- try: len(5) except: print('erro')
- try: len(4) except TypeError: print('erro')
- try: len(7) except TypeError as err: print(f'A aplicação gerou o seguinte erro: {err}')
- try: len(5) except NameError as erra: print(f'Deu NameError: {erra}') except TypeError as errb: print(f'Deu TypeError: {errb}') except: print('Deu um erro diferente')
- try / except / else / finally
- Toda entrada deve ser tratada
- Else é executado somente se não ocorrer o erro.
- Finally é sempre executado, independente se houve exceção ou não.
- Utilizamos o bloco try/except para tratar erros que podem ocorrer no nosso código. Previnindo assim que o programa pare de funcionar e o usuário receba mensagens de erro inesperadas.
Debugando o código com PDB
- Opções de Debug similar ao VBA
- Algumas muito mais avançadas
- Para utilizar o PDB tem que importar o modulo: import pdb (não é necessário a partir da versão 3.7, só escrever: breakpoint())
- Comandos
- l (listar onde estamos no código) | n (próxima linha) | p (imprime variável) | c(continua a execução - finaliza o debugging)
- PDB é o debugger manual do Pyghon(melhor utilizar o Pycharm)
- Comandos
- Opções de Debug similar ao VBA
Informationen
- Beschreibung
- Python Mindmap am Debugando e Tratando Erros, erstellt von Diego Freitas Bastos Dylan am 23/05/2019.
- Erstellt von
- Diego Freitas Bastos Dylan
- Aufrufe
- 0
- Bewertung