python 学习笔记 七 异常

Python用异常对象(exception object)来表示异常情况, 若异常并未被处理或捕捉, 程序就会用Traceback(一种错误信息)终止执行.

捕获异常

try:
    x = input('Enter the first number: ')
    y = input('Enter the second number: ')
    z = x / y
except ZeroDivisionError:
    print 'y can\'t be zero!'

捕获多个异常

上面的程序中, 如果在x, y中输入一个字符串将引发TypeError, 可以这样同时捕获ZeroDivisionError和TypeError:

except ZeroDivisonError:
    ...
except TypeError:
    ...

或者在一个块中:

except (ZeroDivisonError, TypeError):
    ...

捕捉对象

打印异常但程序继续运行:

except (ZeroDivisonError, TypeError), e:

  print e

全捕捉

捕获所有异常:

try:

  ...

except:

  ...

else

else后面的语句可以在没有异常发生的情况下执行:

while True:
    try:
        x = input('x: ')
        y = input('y: ')
        print x/y
    except:
        print 'Invalid input. Try again.'
     else:
        break

 

 

posted @ 2014-06-01 13:46  TonyZheng  阅读(170)  评论(0编辑  收藏  举报