当前位置: 首页 > news >正文

14.错误和异常(二)

目录

1. 冒泡

2. 异常链

3. else 和 finally

4. 创建异常

4.1 自定义创建异常的标准:

4.2 自定义异常

4.2.1 最小语法:一行就够

4.2.2 加字段:让异常携带“病历”

4.2.3 分层体系:精准捕获的秘诀

4.3 命名 & 文档 最佳实践

4.4 实战模板

5. 异常一览


1. 冒泡

异常冒泡是一个形象化的说法,它表示异常被抛出后沿调用栈自动上浮,直到被 except 捕获或程序终止。一句话:“异常不会原地爆炸,它会一层层往上找救兵。”

冒泡路线图

函数 C 抛出异常
↓ 没找到 except,继续上浮
函数 B 抛出异常
↓ 没找到 except,继续上浮
函数 A 抛出异常
↓ 找到 except → 处理

最小演示

def level3():raise ValueError("底层炸弹")def level2():level3()def level1():level2()try:level1()
except ValueError as e:print("顶层接到炸弹:", e)
  • 中途任何一层都可以 except 拦截;

  • 如果 全程无人捕获,解释器打印完整 traceback 后退出;

  • 使用 raise ... from e 可在冒泡时 带上

http://www.dtcms.com/a/365730.html

相关文章:

  • PastePal for Mac 剪贴板历史记录管理器
  • 学习嵌入式第四十五天
  • 设计原则与设计模式
  • flume拓扑结构详解:从简单串联到复杂聚合的完整指南
  • 蓝牙modem端frequency offset compensation算法描述
  • 技术重构人力管理 —— 打造人力资源流程自动化、智能化专业服务方案
  • 小企业环境-火山方舟和扣子
  • 字节跳动后端 一面凉经
  • 数据库与大数据技术栈
  • ElasticSearch倒排索引原理
  • redis中五大数据类型的操作命令
  • 编程基础-eclipse创建第一个程序
  • 【开题答辩全过程】以 基于java的隔离酒店管理系统设计与开发为例,包含答辩的问题和答案
  • 线程通信机制
  • 记录一下node后端写下载https的文件报错,而浏览器却可以下载。
  • 开源与闭源的再对决:从Grok到中国力量,AI生态走向何方?
  • 并发编程指南 同步操作与强制排序
  • Claude Code初体验:让AI成为你的结对程序员
  • Linux学习——管理基本存储(十八)
  • A股大盘数据-2025093分析
  • Provider中的watch、read、Consumer、ChangeNotifierProvider、ValueNotifierProvider
  • 信息融智学=信息哲学+信息科学+信息技术+信息系统工程+信息处理之智
  • 数据库选择有讲究?SQLite、PostgreSQL还是MySQL?
  • 全渠道 + 低代码:如何打造 “内外协同” 的客服管理系统体系?
  • http和https区别是什么
  • docker 安装 redis 并设置 volumes 并修改 修改密码(三)
  • 【TypeScript】事件循环
  • k8s的SidecarSet配置和initContainers
  • 《四川棒球知识百科》球速最快的运动之一·棒球1号位
  • Omi录屏专家 Screen Recorder Mac中文