程序在运行时,如果Python 解释器遇到到一个错误,会停止程序的执行,并且提示一些错误信息,这就是异常。程序停止执行并且提示错误信息这个动作,我们通常称之为:抛出(raise)异常
我们在写python脚本时,很难将所有的特殊情况都处理的面面俱到,通过异常捕获可以针对突发事件做提前的处理比如自定义异常提示信息,从而保证程序的稳定性。
捕捉异常可以使用try/except语句。
try: 执行的代码 except: 如果try中的语句异常,则提示的信息
用法案例
1. 如下,我们都知道被除数是不能为0的,否则肯定会抛出异常,而python属于解释性语言,一旦某个地方发生错误,程序就会停止不会继续往下执行。这极大地影响了程序的稳定性和美观性
所以我们可以对有可能会发生错误的程序部分进行异常捕获,自定义异常信息。这样就算程序运行到那里出错了,依然不会影响程序往下执行。且自定义提示的异常信息,显得非常银杏化
2. 如果我们自定义了异常信息,且同时想看下具体的错误信息是什么,则可以加上Exception
a = 2 try: c = a/0 print(c) except Exception as a: print("表达式错误:", a) print('脚本能够执行到这里吗?') print("wuwu")
3. finally
程序不管有没有报错。都会执行finally中的语句
try: 执行的代码 except: 如果try中的语句异常,则提示的信息 finally: 语句 #不管有没有报错都会执行这条语
案例
a = 2 try: c = a/0 print(c) except: print("表达式错误") finally: print("不管有没有报错都会执行这条语句") print("哈哈")
4. os._exit(0)
有时候我们又需要在捕获到异常的时候停止程序的运行,可以使用os._exit(0)退出整个程序
import os a = 2 try: c = a/0 print(c) except: print("表达式错误") os._exit(0) finally: print("不管有没有报错都会执行这条语句") print("哈哈")