文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

常见的Python异常及处理方法总结

2024-04-02 19:55

关注

一、错误与异常

1.什么是错误

(1)语法错误(大小写拼写错误、括号不匹配等…)=> 不能正常执行
(2)逻辑错误(程序运行正常,只是最后结果不符合预期)

2.什么是异常

程序运行过程中,出现的意料之外的错误

• 如:打开的文件不存在、被除数为0、操作的数据类型不对、存储错误,互联网请求错误…

3.回溯信息

当程序运行时,发生了未处理的异常,Python就将终止执行程序,并以堆栈回溯(Traceback,也 称向后追踪)的形式显示异常发生的上下文。

回溯信息告诉我们应该去哪里寻找问题的根源,对解决问题非常有帮助。

在这里插入图片描述

二、常见异常

常见异常类

在这里插入图片描述

三.异常处理

1.异常处理

在代码被解释执行的过程中可能会抛出异常。
那么也就是说,可能会发生,可能不会发生。对于这么不可预测的异常状态如何处理?
1:即使程序出错,也不想让程序终止
2:如果出错了,需要特殊处理
异常处理机制 try…except…

2.简单的异常处理格式

在这里插入图片描述

3.执行顺序

正常执行: try -> 执行代码 -> 结束
遇到异常: try -> 遇到异常 -> 跳到excep -> 结束

4.except分支可以有多个

在这里插入图片描述

5.执行顺序

执行匹配到第一个except则退出
如果父类异常在最前面,会吞噬所有子类异常(建议:先except子类,再except父类)
如果except捕获的错误与触发的错误不一致,程序会捕获不到

6.else子句:没有发生异常时执行

在这里插入图片描述

7.finally子句:不管异常有没有发生都执行

在这里插入图片描述

8.异常嵌套

在这里插入图片描述

9.异常处理注意事项与建议

建议:

(1)不建议使用异常来代替常规的检查,如if…else判断
(2)避免过多依赖于异常处理机制
(3)在必要的时候,可以手动引发异常(raise)=> 函数或方法

10.在函数中,需要注意在try/except/finally使用return

在finally中使用return,异常无法回溯
在函数中的try/except语句使用return后,仍然会执行finally中的内容
finally => 正常或异常都执行
return => 直接退出函数,返回值给主程序

11.关于性能

在这里插入图片描述

在这里插入图片描述

四.课后小练习

局域网存活IP检测
• 预备知识:python执行系统命令模块(subprocess)、IP地址处理模块(IPy)
• 输入内容:要检查的网段、子网掩码 (输入:192.168.0.0/24)
• 输出示例: 192.168.0.1已被使用
• 将输出结果放到文件
• 将可能存在异常的地方需要做相应处理

总结

1.很多人在写代码时会出现很多的问题,这是正常的现象,不出错才有问题。所以说,作为一名程序猿,要有一定的排错和解决问题的能力,这是一个慢慢提升技术的过程。。。

2.打败你的不是写代码,而是千奇百怪的异常。

以上就是常见的Python异常及处理方法总结的详细内容,更多关于Python异常及处理的资料请关注编程网其它相关文章!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯