Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

[Dúvida] Convenção para tratamento de erros

Boa noite!

Qual seria a melhor forma para tratar o erro KeyError ? O professor usou o "0" caso não tenha a palavra dentro do dicionário.

Eu fiz da seguinte forma:

try:
  aparicoes["xpto"]
except KeyError as e:
  print("Palavra não encontrada")
else:
  print("Palavra encontrada")
2 respostas
solução!

Boa tarde Wallemberg,

Na minha opinião a forma que é apresentada na aula é melhor, porque resume quatro linhas de código try e except e uma:

aparicoes.get("xpto", 'Palavra não encontrada')

Mas isso não quer dizer que a sua forma está errada, tirando a parte que se você já está fazendo o try e a palavra 'xpto' for encontrada não precisaria do else, eu deixaria dessa forma:

try:
  aparicoes["xpto"]
  print("Palavra encontrada")
except KeyError as e:
  print("Palavra não encontrada") 

Rodrigo, bom dia! Obrigado pela ajuda!