1.try…except…:处理异常
try:
print(1 / 0)
except FileNotFoundError:
print("出错了")
finally: # 无论程序执行的结果怎么样,都会执行这一步,运用在处理数据库时,及时退出数据库
print("程序执行结束")
对于无法预料的错误,还是会出现报错信息。
程序执行结束
Traceback (most recent call last):
File "C:/Users/DELL/PycharmProjects/pythonProject1/c/test1.py", line 353, in <module>
print(1 / 0)
ZeroDivisionError: division by zero
此时,可以采用Exception,对于各种报错信息都能执行该语句。
try:
print(1 / 0)
except Exception: #万能的错误接收
print("出错了")
finally: # 无论程序执行的结果怎么样,都会执行这一步,运用在处理数据库时,及时退出数据库
print("程序执行结束")
可以正确输出
出错了
程序执行结束
2.raise:抛出异常
def func(a, b):
if type(a) == int and type(b) == int:
return a + b
else:
raise Exception("你没有正确的输入")
print(func('a', 2))
对于不正确的输入,直接报错。
File "C:/Users/DELL/PycharmProjects/pythonProject1/c/test1.py", line 364, in <module>
print(func('a', 2))
File "C:/Users/DELL/PycharmProjects/pythonProject1/c/test1.py", line 363, in func
raise Exception("你没有正确的输入")
Exception: 你没有正确的输入
两种方法应该灵活运用。