python异常处理

1 异常处理的基本格式 

 1 try:
 2     # 代码块,逻辑
 3     inpt = input("请输入序号:")
 4     i = int(inpt)
 5 except ValueError as e:
 6     print('ValueError', e)
 7 except Exception as e:
 8     # e是Exception对象,对象中封装了错误信息
 9     # 上述代码块出错了,自动执行当前代码块
10     print(e)
11     i = 1
12 else:
13     print("如果不出错,就会执行else")
14     print("如果出错,就不会执行else")
15 finally:
16     print('无论是否出错,都会执行')
17 print(i)
View Code

  只要出现错误,下面的代码就不会执行。

2 主动触发异常 

1 try:
2     # 主动触发异常
3     # 一般用在嵌套函数中
4     raise Exception("不过了。。。")  # 将错误赋值给e
5 except Exception as e:
6     print(e)
View Code

3 自定义异常

 1 class OldBoyError(Exception):
 2 
 3     def __init__(self, msg):
 4         self.message = msg
 5 
 6     def __str__(self):
 7         return self.message
 8 
 9 
10 try:
11     raise OldBoyError('我错了。。。')
12 except Exception as e:
13     print(e)  # 执行obj对象的__str__方法。
View Code

4 断言

  条件成立执行,条件不成立直接报错。

1 print("123")
2 assert 1 == 2
3 print("456")
View Code

 

posted on 2018-05-27 13:25  Artisan正传  阅读(68)  评论(0编辑  收藏  举报