赞
踩
如果在程序中发生了try嵌套,那么如果里面的try没有捕获到这个异常,外面的try就会接收到这个异常,然后进行处理,如果外边的try依然没有捕获到,那么再往外进行传递。
# -*- coding: utf-8 -*-
try:
dic = {}
try:
name = dic['name']
if name == 'python66':
print('我在python66学习python')
except IndexError as e: # 并不是IndexError
print(e)
finally:
print('内部的try')
except KeyError as e:
print('外部捕获异常',e)
内部的try
外部捕获异常 'name'
# -*- coding: utf-8 -*-
try:
try:
dic = {}
try:
name = dic['name']
if name == 'python66':
print('我在python66学习python')
except IndexError as e: # 并不是IndexError
print(e)
finally:
print('内部的try')
except NameError as e: # 并不是NameError
print('第二层捕获异常',e)
finally:
print('第二层的try')
except Exception as e:
print('外层层捕获异常',e)
内部的try
第二层的try
外层层捕获异常 'name'
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。