primt('x') -> Erro de sintaxe
print(x) -> Erro semântico (variável x nao foi definida)
exceção: NameError
n = int('oito')
print(f'Você digitou o número {n}')
exceção: ValueError (digitou string no lugar de int)
a = 8
b = 0
r = a / b
print(r)
exceção: ZeroDivisionError
r = 2 / '2'
exceção: TypeError
lst = [3, 6, 4]
print(lst[3])
exceção: IndexError
import uteis
Se o módulo nao exista:
Exceção: ModuleNotFoundError
Python Exception List (pesquisar no google)
try: #Obrigatório usar
OPERAÇÕES
except: #Obrigatório usar
FALHOU
else: #Facultativo usar
DEU CERTO!
finally: #Facultativo usar
Vai mostrar independente de dar certo ou errado
try:
a = 2
b = 0
c = a / b
except:
print('Tivemos um problema')
else:
print(f'O resultado é {r}')
finally:
print(f'Volte sempre!')
Usando o Exception
try:
a = 2
b = 0
c = a / b
except Exception as erro:
print(f'Tivemos um problema {erro.__class__}') #não mostrar para o usuário!
else:
print(f'O resultado é {r}')
finally:
print(f'Volte sempre!')
podemos ter vários except para cada tipo de exceção:
Excercícios
113: Reescreva a função leiaInt() que fizemos no Exercício 104, incluindo agora a possibilidade da digitação de um número de tipo inválido. Aproveite também e crie também uma função leiaFloat() com a mesma funcionalidade.
114: Crie um código em Python que teste se o site Pudim está acessível pelo computador usado.
115: Crie um pequeno programa modularizado que permita cadastrar pessoas pelo seu nome e idade em um arquivo de texto simples. O sistema só vai ter 2 opções: cadastrar uma nova pessoa e listar todas as pessoas cadastradas.