news 2026/6/9 23:20:21

Iridescent:Day25

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Iridescent:Day25

https://blog.csdn.net/weixin_45655710?type=blog
@浙大疏锦行
DAY 25 异常处理
知识点回顾:
1.异常处理机制
2.debug过程中的各类报错
3. try-except机制
4. try-except-else-finally机制

在即将进入深度学习专题学习前,我们最后差缺补漏,把一些常见且重要的知识点给他们补上,加深对代码和流程的理解。
作业:理解今日的内容即可,可以检查自己过去借助ai写的代码是否带有try-except机制,以后可以尝试采用这类写法增加代码健壮性。

这份关于 Python异常处理(Exception Handling)的教程非常详尽,涵盖了从基础概念到进阶逻辑,再到实际报错类型的全方位解析。

为了帮你完成作业梳理,我将今日的核心知识点总结为一张思维导图式的清单,并提炼了 AI 时代背景下编程思维的转变。


📝 DAY 25:Python 异常处理核心知识梳理

1. 为什么 AI 喜欢写try-except

  • 稳定性优先:AI 模型在强化学习阶段被要求保证代码“可运行”。通过大量嵌套异常处理,可以防止程序因微小错误(如格式不匹配、网络波动)而崩溃,提高任务完成率。
  • 学习点:虽然我们日常写代码追求简洁,但面对不确定的外部输入(接口、文件、用户输入)时,模仿 AI 的防御性编程是非常必要的。

2. 异常处理的“四大家族” (核心语法)

关键字作用执行时机
try探测区包含可能出错的代码。程序会尝试跑一遍。
except救火区只有当try报错时才执行。用于捕获并处理特定错误。
else奖励区只有当try完全没报错时才执行。用于存放“成功后的后续动作”。
finally扫尾区无论结果如何(报错与否、是否有 return)都会执行。常用于关闭文件、释放显存。

3. 必须掌握的常见报错 (Debug 关键词)

在不求助 AI 的情况下,你应该能通过报错的首行判断问题所在:

  • 环境/路径类
    • ModuleNotFoundError: 没装库(pip install)或路径写错。
    • FileNotFoundError: 路径下找不到文件,多半是相对路径搞错了。
  • 数据/逻辑类
    • TypeError: 类型不匹配(比如把字符串和数字相加)。
    • ValueError: 类型对了但值不对(比如把 “abc” 强转成数字)。
    • IndexError: 列表索引出界(只有2个元素却访问第3个)。
    • KeyError: 字典里没有这个键。
  • 计算/语法类
    • SyntaxError: 语法写错了(括号没关、漏了冒号),代码跑都跑不起来。
    • ZeroDivisionError: 除数为零。

4. 深度学习 (DL/ML) 中的实战场景

在机器学习流程中,异常处理不仅仅是“防崩溃”,更是“保数据”:

  1. 显存溢出 (OOM):使用try-except捕获 RuntimeError,在程序崩溃前尝试清理缓存。
  2. 数据读取:当海量图片中有一张损坏时,通过try-except跳过该样本,保证训练不中断。
  3. 模型保存 (finally):无论训练是因为完成还是被手动停止(Ctrl+C),通过finally确保当前进度的权重文件被存入磁盘。

5. 编程习惯建议:从“无脑交给 AI”到“主动 Debug”

  • 第一步:看报错行号,确认是哪行代码在叫。
  • 第二步:看报错类型,理解是数据问题、语法问题还是环境问题。
  • 第三步:尝试自己修改。如果解决不了,再将报错信息和代码一起发给 AI,并阅读 AI 的解释

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/9 5:35:03

回归测试的优化策略:从成本控制到效能提升

在敏捷开发和DevOps普及的当下,回归测试作为保证软件质量的核心环节,正面临日益严峻的挑战。随着迭代周期缩短和系统复杂度提升,传统的回归测试方法往往陷入“测试用例膨胀而覆盖不足”的矛盾境地。本文旨在为软件测试从业者提供一套系统的回…

作者头像 李华
网站建设 2026/6/9 18:33:05

Dify平台在医疗问答系统中的适配性研究

Dify平台在医疗问答系统中的适配性研究 在当今智慧医疗快速演进的背景下,一个现实问题日益凸显:患者对即时、专业健康咨询的需求持续增长,而优质医疗资源却高度集中且供不应求。尤其是在慢性病管理、用药指导和初筛分诊等场景中,传…

作者头像 李华
网站建设 2026/6/9 18:37:26

BDD在金融系统测试中的实践与思考

当业务语言遇见测试代码 在支付风控系统的重构项目中,我们首次引入了BDD框架。业务方抛出的需求是:"当单笔转账金额超过5万元时,必须触发人工审核流程"。这个看似简单的业务规则,过去常常因为开发与测试的理解偏差导致…

作者头像 李华
网站建设 2026/6/9 20:58:58

Unity2D小游戏《蜗牛跳》全关卡演示

Unity2D 小游戏《蜗牛跳》包含两个关卡,玩家通过点击或长按屏幕进行跳跃,目标是取得红色蘑菇并通关。游戏支持切换操作模式,并具备玩法说明、关卡预览、加载进度显示、数据持久化、关卡重启、退出游戏及蓄力提示等功能。 Unity2D小游戏《蜗牛…

作者头像 李华
网站建设 2026/6/9 1:23:25

Selenium WebDriver的进阶用法

对于软件测试工程师而言,Selenium WebDriver是实施Web自动化测试的利器。然而,许多测试脚本在复杂多变的真实环境中显得脆弱不堪。究其原因,往往是只停留在了基础API的使用层面。要构建能够在持续集成管道中稳定运行的自动化用例,…

作者头像 李华