异常
python程序运行时发生错误,会进行报错,并停止继续运行程序。使用try-except代码块处理异常,在错误发生时可以继续运行程序,并且显示出我们自己编写的希望显示的报错提示。
print(1/0) #输出1/0的计算结果
系统显示报错,错误类型是ZeroDivisionError,这时程序停止运行,并报告错误。
================== RESTART: C:\Users\lenovo\Desktop\ex_1.py ==================
Traceback (most recent call last):
File "C:\Users\lenovo\Desktop\ex_1.py", line 1, in <module>
print(1/0)
ZeroDivisionError: division by zero
>>>
下面使用try-except处理这个异常:
try:
print(1/0)
except ZeroDivisionError:
print("除数不能为0!")
这时显示的是:
================== RESTART: C:\Users\lenovo\Desktop\ex_1.py ==================
除数不能为0!
>>>
后面如果还有程序,就可以继续运行。
try-except-else处理异常:
将可能引发报错异常的代码放入try语句中,运行try代码块,出现的异常与except指定的错误相同时,则运行except中的程序;如果try语句运行正常,没有错误,则运行else的程序:
a = int(input())
b = int(input())
try:
a = a / b
except ZeroDivisionError:
print("除数不能为0!")
else:
print(a)
输入1,0,运行except:
================== RESTART: C:\Users\lenovo\Desktop\ex_1.py ==================
1
0
除数不能为0!
>>>
输入1,2,运行else:
================== RESTART: C:\Users\lenovo\Desktop\ex_1.py ==================
1
2
0.5
>>>
还有
利用 try-except-else 语句处理多个文件的时候,如果其中某一个文件查询不到,通过except使python跳过这个异常,就可以继续处理后面的文件。