python 异常处理
捕获异常:
在程序执行过程中出现错误,程序将会抛出异常信息,并停止退出;可以通过try捕获异常打印出,但整个程序不会被中断;
如果错误没有被捕获,它就会一直往上抛,最后被Python解释器捕获,打印一个错误信息,然后程序退出。
1 2 3 4 5 6 7 8 9 | try : #检测语句中的代码执行是否正常 num = int ( input ( 'your idea >>>' )) sums = num + 100 except Exception as e: #try代码异常则捕获 print (e) else : #try代码正常则执行 print ( '正常' ) finally : #无论怎样最后都执行 print ( '结束' ) |
如果input输入一个数字,代码执行过程:try(全部) >> else >> finally
如果input输入一个非数字,int()方法处理非数字会异常,则跳过下面的代码,直接捕获异常,代码执行过程:try(异常处) >>except >> finally
抛出异常:
捕获一个错误实际是捕获到异常class的一个实例。因此,错误并不是凭空产生的,而是有意创建并抛出的。Python的内置函数会抛出很多类型的错误,自己编写的函数也可以抛出错误。
如果要抛出错误,首先根据需要,可以定义一个错误的class,选择好继承关系,然后,用raise
语句抛出一个错误的实例:
1 2 3 4 5 6 7 8 9 | class MyError(Exception): #继承Exception类 pass n = input ( 'your idea >>>' ) print ( '开始' ) if n = = '0' : raise MyError() #抛出MyError类型异常 print ( '结束' ) |
如果在input中输入一个0,则程序终止,抛出异常。
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步