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

6个月Python学习计划 Day 14 - 异常处理基础( 补充学习)

第二周

Day 8 - Python 函数基础
Day 9 - 函数进阶用法
Day 10 - 模块与标准库入门
Day 11 - 列表推导式、内置函数进阶、模块封装实战
Day 12 - 字符串处理 & 文件路径操作
Day 13 - 文件操作基础


🎯 今日目标

  • 理解异常的概念和常见异常类型
  • 掌握 try-except 结构的用法
  • 理解 else 和 finally 的作用
  • 实战练习:用户输入验证 + 文件读写容错

📘 什么是异常?

异常(Exception)指程序运行过程中出现的错误,常见类型如:

异常类型说明
ZeroDivisionError除以零错误
ValueError错误的值(如 int(“abc”))
FileNotFoundError文件不存在
TypeError类型不匹配的操作

🧱 try-except 基本结构

try:代码块(可能会出错)
except 异常类型:出错时执行的代码

示例:

try:num = int(input("请输入一个整数:"))print("你的输入是:", num)
except ValueError:print("⚠️ 输入无效,请输入整数!")

🧱 多个 except 捕获不同异常

try:x = int(input("x: "))y = int(input("y: "))print(x / y)
except ValueError:print("❌ 输入错误,请输入整数。")
except ZeroDivisionError:print("❌ 除数不能为 0。")

🧱 使用 else 和 finally

try:f = open("test.txt", 'r', encoding='utf-8')content = f.read()
except FileNotFoundError:print("文件不存在。")
else:print("文件内容:", content)
finally:print("不管有没有异常,都会执行这段话。")

各部分作用:

语句说明
try主逻辑代码
except捕获并处理错误
else如果没出错,执行(可选)
finally无论是否出错,始终执行,如关闭资源

🧪 练习任务

练习 1:输入两个数字,输出相除结果,处理输入异常与除零

try:a = float(input("输入第一个数:"))b = float(input("输入第二个数:"))result = a / b
except ValueError:print("❌ 请输入有效数字!")
except ZeroDivisionError:print("❌ 不能除以 0!")
else:print("✅ 结果是:", result)

练习 2:尝试打开文件,如果不存在则提示,并写入默认内容

try:with open("info.txt", 'r', encoding='utf-8') as f:print("文件内容:", f.read())
except FileNotFoundError:print("文件未找到,自动创建文件。")with open("info.txt", 'w', encoding='utf-8') as f:f.write("默认内容:Hello Exception!\n")

📌 总结归纳

技能内容说明
try-except用于捕获运行时错误,避免程序崩溃
多异常捕获可分别处理不同异常(如 ValueError, ZeroDivisionError)
else无异常时执行(通常用于主逻辑)
finally无论是否出错都会执行,常用于释放资源

题外话

以终身学习为目标,先了解自己,再优化自己💪
在这里插入图片描述

http://www.xdnf.cn/news/877861.html

相关文章:

  • 制造业数智化:R²AIN SUITE 如何打通提效闭环
  • 苹果企业签名撤销
  • 滑动智能降级:Glide优化加载性能的黑科技
  • Python Day43
  • vue封装gsap自定义动画指令
  • 计算机系统结构-第5章-监听式协议
  • @Minikube安装、配置与应用部署
  • 11. MySQL事务管理(上)
  • C++11新特性(3)
  • Java高级 | 【实验四】Springboot 获取前端数据与返回Json数据
  • DeepSeek进阶应用(三):生成单词卡片高效学英语(可用于开发web应用、app等)
  • MySQL 表的内连和外连
  • 浮动测量技术在现代电力电子系统中的关键作用
  • 每日八股文6.4补
  • Day12
  • GQA(Grouped Query Attention):分组注意力机制的原理与实践《二》
  • 如何选择合适的分库分表策略
  • 前端表单验证进阶:如何使用 jQuery.validator.addMethod() 编写自定义验证器(全是干货,建议收藏)
  • 用布局管理器grid实现计算机界面
  • Python爬虫爬取天猫商品数据,详细教程【Python经典实战项目】
  • VBA中类的解读及应用第二十四讲:把源数据赋给类利用类完成查找
  • 【AI News | 20250604】每日AI进展
  • Markdown基础(1.2w字)
  • OPC UA 知识概述
  • 行业年终工作总结汇报PPT模版分享
  • 并发编程的问题与管程
  • LangChain深度解析:LLM应用开发利器
  • Redis常见使用场景解析
  • 【C语言个数最大最多】2022-4-1
  • 网络攻防技术十二:社会工程学