文章目录
- python学习笔记-9. python错误与异常处理
- 概述
- 一、异常与错误定义
- 二、异常捕获与处理
- 三、自定义异常
- 总结
概述
一、异常与错误定义
异常即一个事件,在程序执行过程中发生,影响程序的正常执行,有些是由拼写、配置、选项等引起的程序错误,有些是有序逻辑不完善引发的BUG,这些都是异常
异常处理流程:
- 检查错误
- 引发异常
- 捕获异常 *** 作
异常解决方案:
- 语法、配置错误:根据出错信息进行排查解决
- 逻辑异常:处理逻辑漏洞
异常与错误的区别:
- 错误:一般指程序运行时遇到的硬件或 *** 作系统的错误,如内存溢出、不能读取硬盘分区、 硬 件驱动错误等。这是致命的,将导致程序无法运行,同时也是程序本身不能处理 的。
- 异常:指在运行环境正常的情况下遇到的运行时错误。异常是非致命的,但也会导致程序 的非正常终止。 python可以捕获和处理异常
python异常捕获与处理使用try except方法,try后写运行的业务逻辑代码,except写发生异常的处理代码
# try后跟需要捕获异常的代码块
try:
num1 = int(input("输入数字1:"))
num2 = int(input("输入数字2:"))
print(num1 / num2)
# ZeroDivisionError为指定的异常,出发此异常except中的代码才会执行,不写异常类型时则所有异常都可进入except中的代码块
except ZeroDivisionError:
print("被除数不能为0")
# 可以使用except继续添加其他形式的异常
except ValueError:
print("不能包含非数字字符")
# except不添加参数,处理其他未知异常
except:
print("这是未知类型的异常")
# else 定义异常未发生需要执行的代码块
else:
print("这是异常未发生时才会执行的代码")
# finally关键字,用来定义无论异常是否发生都会执行的代码块
finally:
print("必须要执行的代码")
raise抛出异常
a = 10
if a > 100:
raise Exception("这是主动抛出的异常")
三、自定义异常
自定义异常及简单使用
class MyException(Exception):
def __init__(self, value1, value2):
self.value1 = value1
self.value2 = value2
raise Myexception("value", "value2")
总结
重点:
- 异常的定义
- 异常捕获-try-expect-finally
- 自定义异常(继承定义-raise抛出)
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)