python基础语法学习: 异常的传递性

异常的传递

异常是是具有传递性的

当函数 fun01() 发生异常, 并且没有捕获处这个异常的时候, 异常会传递到函数 fun02(), 当 fun02() 也没有捕获处理这个异常的时候, main 函数会捕获这个异常, 这就是异常的传递性

当所有函数都没有捕获异常的时候, 程序就会报错

python 复制代码
def fun01():
    return 1 / 0
def fun02():
    fun01()
def fun03():
    fun02()

def main():
    try:
        fun03()
    except Exception as e:
        print(f"出现了异常, 异常信息是{e}")
main()
python 复制代码
def fun01():
    return 1 / 0
def fun02():
    fun01()
def fun03():
    fun02()

def main():
    try:
        fun03()
    except Exception as e:
        print(f"出现了异常, 异常信息是{e}")
main()

打印:

python 复制代码
出现了异常, 异常信息是division by zero

如果想要捕获一段异常 ,并不需要深入到真正出现异常大那一句话, 只要函数之间有调用关系, 只需要在最顶级的调用里进行捕获, 因为异常是可以传递的

相关推荐
PC2005-cloud1 小时前
DeepSeek Harness 创建 skill 指南:结构、安装、使用
笔记·学习
依然鸣1 小时前
PTA团体程序设计天梯赛L1真题讲解L1-077-080
开发语言·c++·算法·深度优先·pat考试·图论
YM52e1 小时前
分页查询的基石:ArkTS 为鸿蒙商品列表设计 LIMIT/OFFSET 的表
android·学习·华为·harmonyos
math_hongfan1 小时前
主从嵌套层次分明:ArkUI 订单卡片内嵌明细的鸿蒙界面
学习·华为·harmonyos
麻雀飞吧2 小时前
零基础选量化工具,先把问题说清楚
人工智能·python
段一凡-华北理工大学2 小时前
AI推动工业智能化转型~系列文章20:工业 AI 平台架构:云-边-端协同的技术体系
人工智能·python·架构·工业平台·云-边协同
CodeBlog-star2 小时前
Harness Engineering:Pi Agent 架构深度解析
人工智能·python·架构·harness工程
简不变2 小时前
将components下的文件夹复制到别一个文件夹下,并重新生成CMakelist.txt文件
python
库玛西3 小时前
现代 C++ 智能指针全景指南:从 RAII 思想到工业级实践
c语言·开发语言·c++·笔记·面试