微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Python基础 7.异常

7.1异常

在 Python 中所有的异常都是继承自 BaseException 直接分为四大类:

SystemExit:Python退出异常
KeyboardInterrupt: 键盘打断(Ctrl+C)
GeneratorExit: 生成退出(下次课再讲)
Exception: 普通异常(只会使用这部分的异常)

 

7.2处理异常

1.基本的 try … except …

try:
    首先写一个try,然后把所有可能出错的代码,放到里面去。
    print-"----------")     #第一条正确的
    print(a)                 #第2条错误
    print(--------3-------") #第三条正确的
except :  
    pass #下面是写捕获到异常的处理方案。

代码中会出现的异常都是 Exception 的子类, 因此在 except 中只需要在最后加上 Exception 即可

2.更加丰富的结构:

  try:
?
print-"---------")print(a)
?
print---------------")
?
except Exception as result: #在这里用个as将捕获到的异常用个变量保存起来。
?
print(‘捕获到了异常,会执行我下面的代码对异常进行处理‘)print(result) # 打印result,把捕获异常信息返回出去。
?
else:
?
print("没有捕获到异常,执行我")finally:
?
print("不管有没有异常,我都会执行”)

 

3.注意事项:

1. try       下面放可能出错的代码 

2. except try下面的代码出错后,会执行except下面的代码
?
3. else     try下面代码没有错误,执行else下面的代码
?
4. finally 不管try下面的代码有没有出错,始终都会执行

7.3自定义异常类型raise:

 

class MyError(Exception): #自定义的异常必须继承Exception
pass
raise MyError(‘异常信息‘) # 主动抛出 自定义异常

格式:raise 异常类型

注意:raise  是主动抛出后面写的异常类型

7.4断言

断言语句是将调试断言插入程序的一种便捷方式

assert 1 == 1
assert 1 == 2,‘报错了‘

assert 的语法规则是:

表达式返回 True  不报错
?
表达式返回 False 报错 报 AssertionError

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐