异常处理

为什么要处理异常?

在编程过程中为了增加友好性,在程序出现bug时一般不会将错误信息显示给用户,而是现实一个提示的页面,通俗来说就是不让用户看见大黄页!!!

捕获异常:

一般来说,你不用去记住那么多异常的名字,等到程序报错了,你就知道是什么异常了。所以这里写捕获异常的几种情况。

1.通用用法

Exception,他可以捕获任意异常。如下:

 


s1 = "hello"
try :
int(s1)
except KeyError:
print("键错误!")
except IndexError:
print("下标错误!")
except Exception as e:
print(e)
 

 

这种方法可以让程序不崩溃,是在你不知情的情况下跳过的。

 

2.规范用法

 1 try:
 2     # 主代码块
 3     pass
 4 except KeyError,e:
 5     # 异常时,执行该块
 6     pass
 7 else:
 8     # 主代码块执行完,执行该块
 9     pass
10 finally:
11     # 无论异常与否,最终执行该块
12     pass
View Code

 

这是比较规范的用法,保证程序不会崩溃。如下:

 1 inp = input("INput : ")
 2 try :
 3     print(inp[10])
 4 except KeyError:
 5     print("键错误!")
 6 except IndexError:
 7     print("下标错误!")
 8 else:
 9     print(len(inp))
10 finally:
11     print(inp.upper())
View Code

3.主动抛出异常

1 try:
2     raise Exception('错误了。。。')
3 except Exception,e:
4     print e

4.自定义异常

 

 

posted @ 2017-08-08 14:08  Leon_online  阅读(70)  评论(0编辑  收藏  举报