python异常处理

  • 异常处理

在程序运行过程中,总会遇到各种各样的问题和错误。有些错误是我们编写代码时自己造成的,比如语法错误、调用错误,甚至逻辑错误。还有一些错误,则是不可预料的错误,但是完全有可能发生的,比如文件不存在、磁盘空间不足、网络堵塞、系统错误等等。这些导致程序在运行过程中出现异常中断和退出的错误,我们统称为异常。大多数的异常都不会被程序处理,而是以错误信息的形式展现出来。

异常有很多种类型,Python内置了几十种常见的异常,就在builtins模块内,无需特别导入,直接就可使用。需要注意的是,所有的异常都是异常类,首字母是大写的!

Python内置了一套try...except...finally(else)...的异常处理机制,来帮助我们进行异常处理。其基本语法是:

try:
    pass
except Exception as ex:        #as 表示取别名
    pass
注:在Python3中,原来的Python2中的except Exception , ex的取别名方法已经不能使用。逗号,被认为是两种异常的分隔符,而不是取别名。

Python的异常机制具有嵌套处理的能力,比如下面的函数f3()调用f2(),f2()调用f1(),虽然是在f1()出错了,但只需要在f3()进行异常捕获,不需要每一层都捕获异常。

def f1():
    return 10/0

def f2():
    f1()

def f3():
    f2()

f3()
>>>
Traceback (most recent call last):
  File "/Users/mlamp/Documents/py_project/parameter.py", line 87, in 
    f3()
  File "/Users/mlamp/Documents/py_project/parameter.py", line 86, in f3
    f2()
  File "/Users/mlamp/Documents/py_project/pa

你可能感兴趣的:(python3)