在程序运行期间遇到错误,Python会报错。Python使用被称为异常的特殊对象来管理程序运行期间发生的错误。每当发生一个错误,Python会创建一个异常对象,如果你编写了处理该异常的代码,程序将继续运行,如果你未对异常进行处理,程序将停止并返回一个trackback,其中包含有关异常的报告。

异常通常使用try-except代码块处理的,try让Python执行指定的操作,同时告诉Python发生异常如何处理,使用try-except代码块,即便发生异常,程序也将继续运行。

下面让我们一起看一下try的机制:

当我们认为某段代码可能会出现异常的时候,我们可以利用try语句执行这段代码,如果try语句内的代码出现异常,则后续代码不会运行,并直接跳转到except语句处,执行完except语句,如果有后续代码,则继续进行。

从输出可以看出,发生错误时" print ‘ a = %d’ % a "没有被执行的,而except语句捕获到ZeroDivisionError,因此被执行,最后执行完毕再执行finally语句。

注:如果没有错误发生,则except语句不会被执行,反而finally语句一定会被执行,另外except如果捕获到的错误不一致,Python还是会报错并返回trackback的。

由于错误有很多种,如果发生的错误有多种,应该由不同的except代码块进行处理。

Python的错误其实也是class,所有的错误类型都继承自BaseException,所以在使用except时需要注意的是,它不但捕获该类型的错误,还把其子类的错误也一并处理了。如下:

ValueError是StandardError的子类,所以except不会再捕获到ValueError的错误了。至此,Python的基础知识就介绍完了,其他内容以后会慢慢深入的!

【懒懒的Python学习笔记十】相关推荐

  1. python 学习笔记(十二) 文件和序列化

    python 文件读写和序列化学习. ## python文件读写 `1 打开并且读取文件` f = open('openfile.txt','r') print(f.read()) f.close() ...

  2. 【懒懒的Python学习笔记七】

    在本章节中将学习编写函数,所谓函数是带有名字的完成特定功能的代码块.要执行函数定义的特定任务,可以调用该函数,所以在程序中将完成特定功能的部分写成函数,这样在多次执行同一任务的时候就无需反复编写代码了 ...

  3. 【懒懒的Python学习笔记九】

    至此,已经掌握了Python的基本技能,在本章中将学习如何进行文件操作. 文件操作 从文件中读取文件 文本数据可存储大量数据,每当需要分析或者修改存储在文件中的信息的时候,读取文件就显得至关重要了. ...

  4. 【懒懒的Python学习笔记六】

    大多数程序旨在最终解决用户问题,为此通常需要从用户那里输入信息,在本章学习中,我们将学习Python的raw_input()函数接受用户输入以及学习while循环来控制程序的运行. 函数raw_inp ...

  5. 【懒懒的Python学习笔记五】

    在这一章中,你将学习到能够将信息关联起来的Python字典,将学习如何访问和修改字典中的信息,同时也会学习如何遍历字典中的数据. 一.一个简单的字典 新建了一个存储用户信息的字典,里面存储了用户姓名. ...

  6. 【懒懒的Python学习笔记一】

    谨以此文献给最爱的詹詹: 选择Python 2 还是 Python 3? 使用2还是3一直是一个争论的要点,但是编程重要的是学习编程思想,语法只是细枝末节的东西!一直纠结2还是3是没有意义的.Pyth ...

  7. 【懒懒的Python学习笔记三】

    在上一章中,我们学习了如何创建列表.访问列表元素和简单的列表排序.那么在本章中,我们将进一步学习如何遍历整个列表和对列表更多的操作. 一.遍历列表 我们经常需要遍历整个列表,对每个元素执行相同的操作, ...

  8. Python学习笔记十 IO编程

    参考教程:廖雪峰官网https://www.liaoxuefeng.com/wiki/0014316089557264a6b348958f449949df42a6d3a2e542c000 IO编程 I ...

  9. python 学习笔记十九 django深入学习四 cookie,session

    缓存 一个动态网站的基本权衡点就是,它是动态的. 每次用户请求一个页面,Web服务器将进行所有涵盖数据库查询到模版渲染到业务逻辑的请求,用来创建浏览者需要的页面.当程序访问量大时,耗时必然会更加明显, ...

最新文章

  1. java run_javarun
  2. TI CC2541 BLE协议栈蓝牙MAC 地址
  3. Redis:相关知识点纵观
  4. Nginx七层负载均衡配置
  5. Asp.NETCore轻松学系列阅读指引目录
  6. 前端学习(1659):前端系列实战课程之瀑布流实现思路
  7. 在Ubuntu 14 04安装和使用Docker
  8. 买基金,是长期持有好,还是短线操作好?
  9. [leedcode 169] Majority Element
  10. 微信小游戏开发之使用云开发作为后台服务
  11. Unix.Trojan.Agent-37008木马查杀
  12. 用正则表达式抓取网页图片
  13. UE4动画重定向与动画蒙太奇(播放动画)
  14. tapestry3常见问题
  15. 表格提示html内容消失,如何解决Word里面的表格插入题注后页面上内容消失、无法编辑的问题...
  16. nginx降权及匹配php
  17. Nginx之父被抓!员工“接私活儿”到底合不合法?
  18. linux的chmod与chown
  19. discuz 版块导航function_forumlist.php,Discuz! X2扩建左侧版块导航 社区层次一目了然...
  20. PHP实现网易夺宝的算法

热门文章

  1. 关于学习的几个经典定律
  2. Talk预告 | 普渡大学王虓:如何利用合作对抗学习来提升自监督学习
  3. 关于ucore实验一的资料查找
  4. 三表左连接(LEFT JOIN) — 两表之间的关系
  5. idea调试源代码c语言,IDEA阅读spring源码并调试
  6. 数据保护与云不离不弃,云中护航渐成行业主旋律
  7. 计算机课堂热身游戏,简单的两款小游戏,带你回味和同学在电脑课上的时光
  8. 商业拜访需要注意的13个小细节
  9. 相关子查询和不相关子查询
  10. java 通用权限管理_通用权限管理设计篇(一)