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