异常即是一个事件,该事件会在程序执行过程中发生影响程序的正常执行。python提供了两个非常重要的功能来处理python程序在运行中出现的异常和错误。今天的Python入门学习课程就给大家讲解一下异常处理机制。

当你的程序中出现异常情况时就需要异常处理。比如当你打开一个不存在的文件时,当你的程序中有一些无效的语句时,Python会提示你有错误存在。作为程序员,我们希望程序足够健壮,即使发生异常,也能够很好地恢复过来。那么该如何有效的预防异常出现呢?你可以采用下列几种方法:

1、try/except子句

try…except语句可以用于捕捉并处理错误。通常的语句放在try块中,错误处理语句放在except块中。

语法:

try:

被检测的代码块

except 异常类型:

try中一旦检测到异常,就执行这个位置的逻辑

在 Python 中,try/except 语句用于处理程序执行过程中出现的一些异常情况。需要注意的是,try…except应该尽量少用,因为它本身就是你附加给你的程序的一种异常处理的逻辑,与你的主要的工作是没有关系的,这种东西加的多了,会导致你的代码可读性变差。只有在有些异常无法预知的情况下,才应该加上try…except,其他的逻辑错误应该尽量修正。

2、else

else代码块不是必须的,它只有在需要依赖于try代码块成功执行时才需要。它在try-except中的结构位置如下:

try:

片段1

except 异常对象:

片段2

else:

片段3

try-except-else代码块的工作原理:python尝试执行try代码块中的片段1代码,片段1的代码应该是只有可能引发异常的代码,不会引发异常的代码不要放在try代码块中(片段1)。如果片段1的代码发生了异常,就执行片段2的代码进行异常处理,否则,如果片段1的代码没有发生异常,就执行片段3的代码,片段3的代码应该是仅在片段1的代码成功执行时才需要运行的代码。

3、finally子句

当你正在读文件或还未关闭文件时发生了异常该怎么办呢?你应该使用try…finally语句以释放资源。

try语句可以有一个可选的finally子句。无论什么情况,该子句都会被执行,通常用于释放外部资源。一旦使用,无论文件是否打开成功,都必须清理资源。所以,在finally子句中使用close(),可以确保即使发生异常,文件也能够被关闭。

本文来自千锋教育,转载请注明出处。

Python入门学习之异常处理机制相关推荐

  1. python速成要多久2019-8-28_2019最全Python入门学习路线,不是我吹,绝对是最全

    近几年Python的受欢迎程度可谓是扶摇直上,当然了学习的人也是愈来愈多.一些学习Python的小白在学习初期,总希望能够得到一份Python学习路线图,小编经过多方汇总为大家汇总了一份Python学 ...

  2. 自学python推荐书籍2019-2019最全Python入门学习路线,不是我吹,绝对是最全

    近几年Python的受欢迎程度可谓是扶摇直上,当然了学习的人也是愈来愈多.一些学习Python的小白在学习初期,总希望能够得到一份Python学习路线图,小编经过多方汇总为大家汇总了一份Python学 ...

  3. python入门视频教程推荐-python入门学习哪个书比较好(python视频教程知乎)

    自学python的学习路线是什么?推荐一些python学习资源 第一段 初级,掌握Python的语法和常用库的使用 这里首先推雪锋在网上的书籍,这是Python2.7的,这本书适合于重头开始一直读完, ...

  4. Python入门学习---第四天

    面向对象编程 类和实例 概念与其他面向对象编程语言类似. 以Student类为例,在Python中,定义类是通过class关键字: class Student(object):pass (object ...

  5. 自学python买什么书比较好-python入门学习哪个书比较好(python视频教程知乎)

    自学python的学习路线是什么?推荐一些python学习资源 第一段 初级,掌握Python的语法和常用库的使用 这里首先推雪锋在网上的书籍,这是Python2.7的,这本书适合于重头开始一直读完, ...

  6. 字字谏言!Python入门学习教程:关于Python不得不说的事儿

    作为程序员,你肯定遇到过这样的领导: "别人还没走,你先走了不合适吧." "不能确定功劳,总得有苦劳吧!你看别人9点谁走了?" 说到996,这很有可能是诱因之一 ...

  7. python入门学习:4.if语句

    python入门学习:4.if语句 关键点:判断 4.1 一个简单的测试4.2 条件测试4.3 if语句 4.1 一个简单的测试   if语句基本格式如下,注意不要漏了冒号 1if 条件 :2 执行1 ...

  8. 深入对比数据科学工具箱:Python和R的异常处理机制

    概述 异常处理,是编程语言或计算机硬件里的一种机制,用于处理软件或信息系统中出现的异常状况(即超出程序正常执行流程的某些特殊条件).Python和R作为一门编程语言自然也是有各自的异常处理机制的,异常 ...

  9. Python入门学习指南--内附学习框架

    Python入门学习指南 原文链接:https://blog.csdn.net/weixin_44558127/article/details/86527360 最近开始整理python的资料,博主建 ...

最新文章

  1. 当一个View加在一个透明的父View上时,显示会变成透明。
  2. 2021年春季学期-信号与系统-第十五次作业参考答案-第二小题参考答案
  3. QDir::toNativeSeparators的使用
  4. qemu模拟imx6用户态环境
  5. Intellij启动界面导入maven工程,且该maven工程不具备intellij配置文件
  6. 浅谈javascript函数劫持
  7. 进入前端行业之前我们需要了解什么,明白这些就可以
  8. Python零基础学习笔记(二十)—— tuple元组
  9. PHP5.3版本安装
  10. 《RHEL6.3 FTP服务器虚拟用户的配置(含图)》——如此简单
  11. java.io.FileNotFoundException: ...\ibs\library-1.0.17.jar (系统找不到指定的文件。)
  12. 企业中MySQL高可用集群架构三部曲之MM+keepalived
  13. 如何认识会计科目,看懂财务报表?
  14. 杭州电子科技大学计算机学院复试细则,2020杭州电子科技大学计算机学院考研复试公告...
  15. 拼多多通用优惠券漏洞被薅羊毛数千万 你的系统有反作弊防护吗?
  16. 使用cpolar远程连接群晖NAS(创建临时链接)
  17. js 原生代码跳转页面,返回上一级页面
  18. 计算机研究与发展投稿记录
  19. 二级页面的极简模板(帮助理解二级页面)
  20. python基于pingouin包进行统计分析:使用mediation_analysis函数构建包含协变量的mediation analysis(中介分析)模型、covar参数指定协变量

热门文章

  1. Swintransformer详细设计文档
  2. php域名转发,php 域名转发程序
  3. 拉取数据_Apache Kafka-数据写入过程
  4. ajax请求后台报没有body_前端常见面试 - 请求篇
  5. python处理excel奖金_60万行的Excel数据,Python轻松处理
  6. 单数据源:spring boot+mybatisplus启动后访问接口报错Invalid bound statement (not found)
  7. Nauuo and Votes
  8. New Year and the Christmas Ornament
  9. 【CentOS Linux 7】【Linux网络配置基础】
  10. Java10-day01【继承(变量-构造方法访问-成员方法 访问)、super内存图、方法重写、继承、包、import、权限修饰符、final、static】