Python之异常概述
一、前言
在程序运行过程中,经常会遇到各种各样的错误,这些错误统称为“异常”。这些异常有的是由于开发者一时疏忽将关键字敲错导致的,这类错误多数产生的是“SyntaxError:invalid syntax”(无效的语法),这将导致程序不能运行。这类异常是显式的,在开发阶段很容易发现。还有一类是隐式的,通常和使用者的操作有关。
二、Python中的异常实例
例如:在IDLE中创建一个名称为division_apple.py的文件,然后在该文件中定义一个除法运算的函数division(),在函数中,要求输入被除数和除数,然后应用除法算式进行计算,最后调用division()函数,代码如下:
def division():
num1 = int(input("请输入被除数:")) # 用户输入提示,并记录
num2 = int(input("请输入除数:"))
result = num1 // num2 # 执行除法运算
print(result)
if __name__ == "__main__":
division() # 调用函数
运算程序,如果在输入除数时,输入为0,将得到如下图所示的结果:
产生ZeroDivisionError(除数为0的错误)的根源在于算数表达式“3/0”中,0作为除数出现,所以正在执行中的程序被中断。
三、Python中常见的异常及描述
除了ZeroDivisionError异常外,Python中还有很多异常,下表所示为Python中常见的异常。
异常 | 描述 |
---|---|
NameError | 尝试访问一个没有声明的变量引发的错误 |
IndexError | 索引超出序列范围引发的错误 |
IndentationError | 缩进错误 |
ValueError | 传入的值错误 |
KeyError | 请求一个不存在的字典关键字引发的错误 |
IOError | 输入输出错误 |
ImportError | 当import语句无法找到模块或者from无法在模块中找到相应的名称时引发的错误 |
AttibuteError | 尝试访问未知的对象属性引发的错误 |
TypeError | 类型不合适引发的错误 |
MemoryError | 内存不足 |
ZeroDivisionError | 除数为0引发的错误 |
本文含有隐藏内容,请 开通VIP 后查看