异常概念:1 - 代码执行产生错误,无法继续

2 - 在异常前面代码是可以执行的  ---python是解释型的

3 - 异常作用  --- 程序不要退出 - 可以继续执行 同时给予程序员一定的异常提示信息

python有两种错误很容易辨认:语法错误和异常

语法错误:while True:

print('hello  world!')

异常:print(10+(1/0))    #  ZeroDivisionError:disvision  by  zero  除数不能为0

异常的种类:try语句  -- 首先执行try子句(在关键字try和关键字except之间的语句),如果没有异常发生,忽略except的子句,try子句执行后结束。

如果在执行try子句的过程中发生了异常,那try子句余下的部分将被忽略。

如果异常的类型和except之后的名称相符,那么对应的except子句将被执行。

如果一个异常没有与任何的except匹配,那么这个异常将会传递给上层的try中。

1 - NameError.name 'name'  is  not  defined   #  ‘name’没有被定义

       2 - ZeroDivisionError:disvision  by  zero   #  除数不能为0

3 - FileNotFoundError:[Errno 2] No such file or diretory:'t:/'     # 找不到相应的文件或目录

4 - IndexError:list index out of range     # 下标越界异常

异常的捕获+处理

1 - 捕获预知异常

try:

except  异常类型:

处理内容

2 - 多个预知异常:执行其中一个  ---  异常按照顺序抛出

except  ZeroDivisionError:

print('您输入的值不能为0!')

except  ValueError:

print('输入的值的类型不对!')

3 - 捕获异常的具体信息   except  ZeroDivisionError  as  e:

4 - 有时候我们并不知道会抛出什么异常  ---- 未知异常

①except  Exception  as e :   ----   捕获异常父类

②简写  except:

③捕获未知异常的具体信息:   tracback.format_exc()

5 - 不管是否有异常,我们都要执行一段代码      finally:

6 - else:  没有异常的情况下,要执行一段代码

7 - 函数调用栈:① 解释器中断当前代码的执行,并抛出一个异常对象

② 并在函数的调用栈从下到上,层层的寻找捕获处理该异常的代码

③ 如果能找到就执行对应的代码

④ 如果不能则会一直找到最外层的函数,结束本次执行

8 - 自定义异常  -----  类

继承自Exception

class NameTooLongError(Exception):

pass

笔记||Python3之异常处理的更多相关文章

  1. python聚类算法实战详细笔记 (python3.6+(win10、Linux))

    python聚类算法实战详细笔记 (python3.6+(win10.Linux)) 一.基本概念:     1.计算TF-DIF TF-IDF是一种统计方法,用以评估一字词对于一个文件集或一个语料库 ...

  2. Python3 的异常处理

    Python3 的异常处理,在官方文档的 tutorial 中有说明. 这里把常用的异常处理方法都列出来,方便平时查找. 捕获异常基类 Python3 要求我们的异常必须继承 Exception 类. ...

  3. 【Python3之异常处理】

    一.错误和异常 1.错误 代码运行前的语法或者逻辑错误 语法错误(这种错误,根本过不了python解释器的语法检测,必须在程序执行前就改正) def test: ^ SyntaxError: inva ...

  4. 笔记:Python异常处理与程序调试

    Python异常处理与程序调试 Python提供了强大的异常处理机制,通过捕获异常可以提高程序的健壮性.异常处理还具有释放对象,中止循环的运行等作用.在程序运行的过程中,如果发生了错误,可以返回事先约 ...

  5. Spring MVC学习笔记——登录和异常处理

    1.在WEN-INF文件夹下面,添加一个login.jsp文件 <%@ page language="java" contentType="text/html; c ...

  6. 《java JDK7 学习笔记》之异常处理

    1.java中所有的错误都会被打包为对象,JVM会尝试执行try区块中的程序代码,如果发生错误,执行流程会跳离错误发生点,然后比较catch括号中声明的异常类型,是否符合被抛出的错误对象类型,如果是的 ...

  7. Guava学习笔记:简化异常处理的Throwables类

    有时候, 当我们我们捕获异常, 并且像把这个异常传递到下一个try/catch块中.Guava提供了一个异常处理工具类, 可以简单地捕获和重新抛出多个异常.例如: import java.io.IOE ...

  8. Python学习笔记整理(十七)异常处理

    一.异常基础 try/except:捕捉由代码中的异常并恢复,匹配except里面的错误,并自行except中定义的代码,后继续执行程序(发生异常后,由except捕捉到异常后,不会中断程序,继续执行 ...

  9. Python学习笔记总结(四)异常处理

    1.基础 try/except/else:[else是可选的]捕捉由代码中的异常并恢复,匹配except里面的错误,并执行except中定义的代码,后继续执行程序(发生异常后,由except捕捉到异常 ...

随机推荐

  1. MySQL InnoDB MVCC

    MySQL 原理篇 MySQL 索引机制 MySQL 体系结构及存储引擎 MySQL 语句执行过程详解 MySQL 执行计划详解 MySQL InnoDB 缓冲池 MySQL InnoDB 事务 My ...

  2. iOS核心动画高级技巧-2

    3. 图层几何学 图层几何学 不熟悉几何学的人就不要来这里了 --柏拉图学院入口的签名 在第二章里面,我们介绍了图层背后的图片,和一些控制图层坐标和旋转的属性.在这一章中,我们将要看一看图层内部是如何 ...

  3. hostnamectl命令 主机名 host相关命令

    hostnamectl set-hostname CentOS7设置主机名为CentOS7 hostnamectl status查看主机系统信息 注:host+TAB查阅host相关的所有命令 hos ...

  4. 让块元素在div中水平居中,并且垂直居中的五种方法

    在写代码前,先做下准备工作,写两个div,设置下div的大小,把小的div放在大的div里面.可以给小的div设置下颜色,方便观看. 方法一:写一个伪元素,将它设置为行内块元素,高度与父元素相同,写一 ...

  5. C#解析XML之流模型-XMLTextReader类

    C#读取XML文档之XMLTextReader 类有一些构造程序来适应各种各样的情况,比如从一个已经存在的数据流或统一资源定位网址读取数据.最常见的是,你或许想从一个文件读取XML数据,那么也就有一个 ...

  6. (四十)golang--单元测试

    传统的测试: package main import ( "fmt" ) func addUpper(n int) int { res := ; i <= n; i++ { ...

  7. 2019-9-23:渗透测试,基础学习,http协议数据包的认识,html css的认识,笔记

    Burp suite功能模块Dashboard:扫描Proxy:拦截包,代理 drop:放弃Intruder:爆破Decoder:编码,解码repeater:重放comparer:比较 BP,prox ...

  8. SpringBoot源码学习系列之异常处理自动配置

    SpringBoot源码学习系列之异常处理自动配置 1.源码学习 先给个SpringBoot中的异常例子,假如访问一个错误链接,让其返回404页面 在浏览器访问: 而在其它的客户端软件,比如postm ...

  9. scrapy抓取中国新闻网新闻

    目标说明 利用scrapy抓取中新网新闻,关于自然灾害滑坡的全部国内新闻:要求主题为滑坡类新闻,包含灾害造成的经济损失等相关内容,并结合textrank算法,得到每篇新闻的关键词,便于后续文本挖掘分析 ...

  10. linux磁盘分区三步走

    为了便于理解硬盘的物理结构 ,可将硬盘看作一个圆,它是坚硬金属材料制成的涂以磁性介质的盘片,不同容量硬盘的盘片数不等.每个盘有两面,都可记录信息.要了解硬盘的物理结构,需要弄懂磁道.扇区.柱面.簇等几 ...