小J学python--Exception-异常
现在我们要打开一个名为fuck的文件,fuck是不存在的,看看异常是怎么工作的
不捕获异常的情况
#打开文件 open('fuck')
执行结果
捕获所有异常
Exception是所有异常类的父类,所以可以捕获所有异常
try: open('fuck.txt') #捕获所有异常,存储到变量e中 except Exception as e: print(e) #如果没有捕获到异常,那么就执行else中的事情 else: print('没有异常 else') #在程序中,如果一个段代码必须要执行,即无论异常是否产生都要执行,那么此时就需要使用finally。 比如文件关闭,释放锁,把数据库连接返还给连接池等 finally: print('hello,finally')
执行结果:
捕获指定异常
根据上面不捕获异常的中提示:FileNotFoundError,现在我们将它将它捕获
try: open('fuck.txt') # 捕获FileNotFoundError异常 except FileNotFoundError: print('没有这个文件') # 捕获所有异常 except Exception as e: print(e) # 如果没有捕获到异常,那么就执行else中的事情 else: print('hello,else') # 在程序中,如果一个段代码必须要执行,即无论异常是否产生都要执行,那么此时就需要使用finally。 比如文件关闭,释放锁,把数据库连接返还给连接池等 finally: print('hello,finally')
执行结果: