sexta-feira, 9 de agosto de 2013

     É absolutamente normal, durante o desenvolvimento de um código, encontrar alguns erros quando vamos checar como nosso programa está rodando. É muito comum também encontrar erros de sintaxe quando estamos aprendendo uma nova sintaxe. Então, como lidar com eles?

     Vamos tentar criar um array de nomes com a sintaxe errada, só para ver a resposta do python.

names ['Leandro','Joao','Paulo']

     Como está faltando o sinal de atribuição, teremos a seguinte mensagem na tela:


     O erro nos mostra que há um problema em 'names' na linha 1, facilitando a identificação em nosso código, principalmente quanto for muito longo.

     Evoluindo nosso conceito, é possível escrever programas que tratam estes erros de forma específica. No exemplo abaixo, temos algumas linhas de código que pedem ao usuário entrar com um número inteiro.

while True:
n = int(raw_input('Informe um numero inteiro: '))

     Se o usuário fizer uma entrada diferente, como uma string, teremos o seguinte erro:


     Para um programador talvez não seja estranho receber uma mensagem como essa. Mas se for um usuário em um e-commerce, receber esta mensagem provavelmente o fará desistir de sua compra.
     Podemos deixar mais elegante nosso erro com o tratamento de exceções. Temos a seguinte sintaxe:

try:
tarefa

except:
o que acontece se a tarefa não der certo

     Em nosso exemplo temos:

while True:
try:
n = int(raw_input('Informe um numero inteiro: '))

except:
print 'Por favor, insira um numero inteiro'


     Observe que, ao inserir uma string, recebemos nossa mensagem de erro tratada e o programa não é interrompido, como no último erro. Ao inserir um inteiro, nosso programa continua sua execução.

     Neste post, fizemos uma introdução ao tratamento de exceções.  Este assunto é mais amplo, como a criação de classes de exceções e múltiplos tratamentos. Abordaremos com mais calma nos próximos posts.

     Até lá!



0 comentários:

Postar um comentário