捕捉异常

使用try/except语句可以实现捕捉异常:

try:
    pass        # 正常进行时的代码
except:
    pass        # 异常处理的代码

如果没有捕捉异常,就会“传播”到调用的函数中。如果那里仍然没有捕获,异常就会“浮”到程序的最顶层。如果捕捉到异常,但又想重新引发它(即要传递异常,不进行处理),可以调用不带参数的raise语句。

为了捕捉不同类型的异常,可以在同一个try/except语句后添加多个except子句:

try:
    x = input('Enter the first number: ')
    y = input('Enter the second number: ')
    print x/y
except ZeroDivisionError:
    print "The second number can't be zero!"
except TypeError:
    print "That wasn't a number, was it?"

将多个异常类型作为元组列出,可以一个块捕捉多个类型异常:

try:
    x = input('Enter the first number: ')
    y = input('Enter the second number: ')
    print x/y
except (ZeroDivisionError, TypeError):
    print "Your number were bogus..."

results matching ""

    No results matching ""